I am using autoplay youtube video when its visible on scroll, but if I pause it manually and scroll the video off-screen, and scroll back to video it starts again.
What I want is, If I pause it manually, it should not play again even scrolling, and when i play it again, it should follow the same function of play/pause when scroll.
Please note: The snippet inn't working but if you copy the code locally, it will work.
<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<script type="text/javascript">
// Load the IFrame Player API code asynchronously.
var player;
// this function gets called when API is ready to use
var playerInfoList = [{
id:'player',
userPaused: false
},{
id:'player1',
userPaused: false
}
];
function onYouTubePlayerAPIReady() {
// create the global player from the specific iframe (#video)
for(var i = 0; i < playerInfoList.length;i++) {
var curplayer = playerInfoList[i];
var curpause = curplayer.userPaused;
var curplayer = curplayer.id;
player = new YT.Player(curplayer, {
events: {
// call this function when player is ready to use
'onReady': onPlayerReady,
'onStateChange' : onPlayerChange
}
});
// console.log(player.getIframe())
}
}
function onPlayerReady(event) {
var curplayer = event.target.a;
// console.log(event);
jQuery(window).scroll(function() {
$offtop = jQuery(curplayer).offset().top;
$wofftop = jQuery(window).scrollTop();
// console.log(document.activeElement);
// console.log($offtop, $wofftop)
// console.log(curplayer.id+'>'+($offtop-500));
if (($wofftop > $offtop - 500) && ($wofftop < jQuery(curplayer).offset().top + 200) && !jQuery("body").hasClass("paused")){
event.target.playVideo();
} else {
//console.log(curplayer+" pausing... ");
jQuery( "body" ).blur();
event.target.pauseVideo();
//jQuery("body").removeClass("paused");
}
});
// bind events
}
function onPlayerChange(event) {
console.log(event.data);
if (event.data == '1') {
jQuery("body").removeClass("paused");
}
if (event.data == '2') {
// jQuery("body").addClass("paused");
}
}
window.addEventListener('blur',function(){
if(document.activeElement.id == 'player'){
console.log('the "play" button *might* have been clicked');
jQuery("body").addClass("paused");
}
});
// Inject YouTube API script
var tag = document.createElement('script');
tag.src = "https://www.youtube.com/player_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
</script>
<div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Animi, iusto amet quisquam veniam, temporibus nesciunt ipsa ullam corporis aut, quia quis enim nihil dolores officia modi impedit odio? Non, vel.</div>
<div>Magnam molestias blanditiis voluptatum sequi tenetur veritatis ipsam, ea laboriosam, nihil eum assumenda fugiat minus, velit quia quaerat quasi ab dignissimos, delectus praesentium veniam inventore. Aut odit vero perspiciatis asperiores!</div>
<div>Debitis ab hic sed quis illum voluptatem alias, perspiciatis delectus vel voluptatibus quaerat corporis fugit officia, laudantium velit, vero atque ullam placeat a quae quisquam dolor ut repellendus! Nostrum, dolore!</div>
<div>Accusamus facilis ipsum nihil eveniet aliquid fugiat rem ratione assumenda modi ut, odio nobis suscipit. Nam sit, explicabo repellat excepturi eum cum accusantium voluptatibus, dolore expedita veritatis nisi omnis maxime!</div>
<div>Rem iste, odio quas minus porro commodi, quisquam, esse animi saepe architecto molestiae voluptate quo. Perferendis amet quisquam dolores sunt laudantium, libero minima dignissimos asperiores itaque sapiente nulla nisi at!</div>
<div>Impedit omnis rem aut ea fugiat tenetur, aperiam asperiores maxime eaque totam unde nam blanditiis aliquid officia quae quas ipsum, ex tempora illum repudiandae! Velit impedit nihil assumenda animi dolorem.</div>
<div>At quia dolore facere, quisquam corrupti accusamus ut. Pariatur beatae earum modi quis vitae. Voluptate reprehenderit labore quos ut porro pariatur soluta, veniam laudantium beatae perferendis, recusandae molestias impedit possimus.</div>
<div>Perferendis velit facere molestias, minima quae cumque repellendus rerum error ab labore? Quaerat quasi accusantium facere voluptates maiores. In deserunt, molestias, distinctio aut reprehenderit dignissimos placeat doloremque corporis voluptas delectus!</div>
<div>Expedita, amet, quaerat. Tempore, sapiente inventore nostrum sunt, accusamus ipsam ad natus consequatur error sequi ratione voluptatem adipisci dolor facilis nesciunt magnam libero quisquam. Explicabo laboriosam rem magni reprehenderit eos.</div>
<div>Sed id aut assumenda incidunt debitis ratione, earum voluptate ex excepturi iusto totam temporibus quisquam unde eos nemo explicabo deleniti ab rerum tempore aliquid laboriosam? Labore officia numquam ex voluptas.</div>
<div>Quod in voluptatum officiis vitae est sit modi, sapiente pariatur molestiae ipsum dolore atque quibusdam molestias, quam nemo libero aperiam laborum. Minus dignissimos dolores omnis asperiores, blanditiis magnam. Est, impedit.</div>
<div>Reiciendis nam ut laboriosam voluptatum soluta optio dolore quidem asperiores illum quia debitis quae ab, neque repellat maiores sed ea voluptas perferendis excepturi labore velit, quaerat, odio. Quae, minima, soluta.</div>
<div>Quasi nemo fuga ad ullam blanditiis velit tempore, accusantium, tenetur ipsa magni amet corporis cupiditate ipsum deserunt dignissimos, quos! Explicabo adipisci modi rem. Voluptatibus quibusdam officia laudantium, omnis nihil. Veniam!</div>
<div>Doloribus sunt reprehenderit odit, hic magni beatae architecto neque accusamus id? Temporibus eveniet officia quae voluptate eius earum optio voluptates et error, ad quasi! Saepe cupiditate cumque dolore debitis incidunt.</div>
<div>Deleniti dolorum saepe itaque ab dolorem amet, quidem aliquam molestias blanditiis molestiae id. Fugiat ut tempore nisi voluptatem nulla exercitationem aut, molestiae labore officiis temporibus. Sapiente atque tempora suscipit doloribus.</div>
<div>Quaerat cupiditate voluptatum iusto dolore dolorum, sequi reprehenderit, aliquam, totam quas velit impedit, non facilis suscipit quibusdam recusandae iure doloremque a deleniti quis. Nobis ullam inventore alias veniam. Iure, excepturi.</div>
<div>Voluptates dolore unde accusantium enim, sequi, nesciunt sunt amet. Omnis molestias hic soluta itaque magnam quia aperiam quisquam, similique, facere consequuntur fugiat eaque nam ratione assumenda, voluptates eum? Et, assumenda.</div>
<div>Voluptatum distinctio quos pariatur, quia officiis dignissimos ratione nam, laudantium eum ut doloremque debitis ipsam deserunt sequi, libero quae vitae cumque nihil non. Cumque fugit commodi veniam esse molestiae facere.</div>
<div>Consequuntur nemo est, temporibus placeat quod sequi aliquam error ea quam, animi, nostrum, voluptatem commodi quis eligendi maiores natus soluta laborum ex. Ratione necessitatibus qui optio alias harum. Quos, id.</div>
<div>Veritatis, doloremque obcaecati blanditiis minus incidunt autem suscipit modi, rem aliquid nemo deserunt nobis quibusdam optio vero temporibus cumque? Velit, aspernatur aliquam enim dolores, officiis nihil ab vero minima nesciunt.</div>
<div>Illo, alias aperiam. Ipsam deserunt ab illo eaque voluptatem numquam debitis cum nostrum cupiditate dolore minima voluptatum, repellendus vel illum veniam similique nobis dignissimos culpa tenetur labore veritatis tempore aliquid.</div>
<div>Blanditiis in, ut dolores magni pariatur corporis unde reprehenderit, quo ea ipsum fugit iusto at voluptatibus eum quisquam excepturi error sunt. Culpa modi pariatur ipsam beatae magni ratione eos quod.</div>
<div>Obcaecati commodi, quas. Fuga, consequuntur suscipit et consectetur temporibus molestiae necessitatibus quisquam corrupti unde architecto odio ab obcaecati quasi repudiandae optio iste reprehenderit, facere quaerat, harum reiciendis ratione praesentium sapiente.</div>
<div>Dolorum sed eaque quis nesciunt, voluptate assumenda veritatis praesentium obcaecati officiis sapiente deserunt harum ipsam dignissimos, doloribus exercitationem. Numquam minima et, nemo totam vitae. Aut, eum! Aut vitae, quod odit!</div>
<div>Aliquid dicta reprehenderit ea deserunt quis mollitia animi officiis dolor corporis vitae perferendis natus, illo ducimus dolore fugit eos facilis vero, voluptatem porro, ad. Ipsa assumenda animi, et magni dolores?</div>
<div>Hic recusandae repellendus molestiae harum modi magnam provident porro voluptate. Expedita ipsa voluptatibus earum, provident aspernatur mollitia accusamus quibusdam dignissimos qui! Cum quibusdam est esse. Quasi quo officia earum possimus?</div>
<div>Sint accusantium esse sapiente eum mollitia nihil ducimus, est fuga id neque nisi quaerat iste officia placeat quas, maxime et ea similique delectus aut, labore earum. Asperiores quos ad quaerat!</div>
<div>Sint sequi ea optio minus quia vitae doloribus. Repudiandae minus commodi quia consequatur sequi dolorum natus reiciendis aspernatur nam ipsam dolor, consectetur quod harum, odit, cumque id labore facilis quasi.</div>
<div>Tenetur sequi fugiat et nobis deserunt, voluptatibus! Soluta quaerat iste nesciunt expedita labore, repudiandae ex optio provident officia consequatur tenetur esse illo nihil, unde excepturi fugiat perferendis numquam similique nam?</div>
<div>Consequuntur assumenda vero alias. Repellendus dolore voluptas obcaecati tempore debitis, expedita id deserunt illum numquam. Alias dolorem cum ea repellendus explicabo fuga, odit corrupti voluptate esse magnam unde, quo perspiciatis.</div>
<div>Est voluptatem neque nam aliquid tenetur perferendis ullam reprehenderit, eius provident delectus quisquam, facilis quia natus quo itaque nisi deserunt at porro. Quidem numquam eaque porro esse dolores fugiat debitis?</div>
<div>Enim iste veniam voluptates odio voluptatem blanditiis, commodi dolorem eum quo vel rem nostrum in eligendi ipsa, repudiandae maxime amet. Doloremque ut eum, at, libero quo iste ipsa eveniet cupiditate?</div>
<div>Asperiores sint adipisci vero saepe quis quisquam eius earum quas, veritatis unde voluptates animi excepturi ipsum blanditiis omnis facilis quaerat nisi amet? Laboriosam quis quas, sed, illo repudiandae odio blanditiis!</div>
<div>Non, animi, amet? Rem qui tempora reprehenderit eos velit dolore, cum ut vitae minima? Quisquam veniam, doloremque eligendi fugiat aliquid minima! Ut sunt esse voluptatem nulla, iure harum sint deserunt!</div>
<div>Ipsa, voluptatibus praesentium fugit modi facere error saepe deserunt. Ea voluptatibus, repellat sunt. Cum aperiam rerum corrupti officiis distinctio, at quis veniam neque dolor, quia ipsum porro mollitia molestiae dicta?</div>
<div>Neque in soluta dolores, voluptate, autem debitis! Adipisci omnis qui, aut suscipit dolore delectus magnam veniam, sit aliquid id quaerat ut assumenda et itaque quam ipsum, repellendus nihil eaque natus.</div>
<div>Adipisci, quod, eaque nulla pariatur laborum deserunt cum ratione dolorum ut vero accusamus nisi aut alias dolor distinctio mollitia itaque aliquid ea incidunt. Explicabo animi odit minus esse doloremque cupiditate.</div>
<div>Cupiditate eum nam inventore labore doloremque possimus ullam, alias sed commodi perspiciatis aut, sunt quos? Optio unde excepturi dolore ex aut facilis eveniet consectetur sit, esse autem iure, nesciunt et.</div>
<div>Aut sint, laborum minus autem quisquam molestias quia fugiat itaque nam fuga labore, possimus iusto sunt. Architecto, placeat libero. Esse velit natus, culpa tenetur praesentium maiores. Inventore delectus, temporibus enim.</div>
<div>Repudiandae tempora dolore quam a. Assumenda aliquid ad reprehenderit amet vero architecto, quam sequi id eveniet natus vitae minima, velit, nulla voluptatem voluptate necessitatibus tempora repellendus ullam, iusto temporibus pariatur!</div>
<div>Tempora sapiente doloribus, illum magnam? Commodi culpa porro illum adipisci eveniet nulla temporibus reprehenderit impedit corrupti distinctio vel, ducimus numquam quasi deserunt accusantium eos sed mollitia sint neque ad vero.</div>
<div>Quas recusandae, quaerat quia a eaque nemo. Labore qui consequatur perferendis inventore, distinctio asperiores quam dolore! Culpa rem a tenetur odit, quisquam atque incidunt voluptatem animi recusandae quam, saepe vero.</div>
<div>Ea nostrum, nesciunt odio ducimus impedit molestias magni delectus sequi numquam esse possimus aliquam culpa laboriosam, rem a iusto dicta fugit, ratione? Pariatur quos distinctio blanditiis, vero laudantium quidem, libero.</div>
<div>Est adipisci maiores et nulla. Laboriosam veniam, dolorum esse totam repellendus necessitatibus molestiae praesentium, consequuntur, accusamus aliquam officiis, accusantium. Sint sapiente esse qui veniam accusamus delectus deserunt libero odio necessitatibus!</div>
<div>Commodi blanditiis laudantium debitis sequi, sapiente porro deserunt eaque, explicabo mollitia nam maiores iusto hic quidem earum! Eligendi mollitia ipsum voluptas unde dolorem recusandae quos ab error deserunt consectetur. Eligendi.</div>
<div>Eius aspernatur voluptates, voluptatibus pariatur fugiat voluptate suscipit corporis rem dolore repellendus hic quaerat quisquam, accusamus animi minus, quae in sunt. Repudiandae ad sunt autem iusto, quisquam pariatur totam, libero.</div>
<div>Natus, nihil, assumenda. Consequuntur, cumque odit odio placeat perferendis tempore architecto cupiditate natus nesciunt modi officiis facilis dolores, mollitia fuga magni maxime ad reiciendis, debitis sit voluptate minus sapiente praesentium.</div>
<div>Voluptatibus esse magni cupiditate obcaecati porro. Ipsam est modi, veniam libero! Laboriosam iste dolore tenetur nobis sequi eligendi vel dolorem, illo soluta minus labore tempore est recusandae, repudiandae, delectus rerum!</div>
<div>Veritatis fugiat, quod hic architecto, laudantium inventore at similique recusandae tempora, rerum deserunt vero voluptas totam aliquam, a harum minus id animi aperiam. Pariatur magni doloribus praesentium inventore illum recusandae?</div>
<div>Vero, cum consequatur qui maiores sit veritatis non harum distinctio, nobis optio ad dicta nostrum placeat vitae similique voluptatem minima quia voluptate magni voluptas officia? Dolor sed quo assumenda debitis.</div>
<iframe id="player" src="https://www.youtube.com/embed/krVkvyQjyBQ?enablejsapi=1&html5=1;&autoplay=1&mute=1" allowfullscreen="" frameborder="0" height="315" width="560"></iframe>
<div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Animi, iusto amet quisquam veniam, temporibus nesciunt ipsa ullam corporis aut, quia quis enim nihil dolores officia modi impedit odio? Non, vel.</div>
<div>Magnam molestias blanditiis voluptatum sequi tenetur veritatis ipsam, ea laboriosam, nihil eum assumenda fugiat minus, velit quia quaerat quasi ab dignissimos, delectus praesentium veniam inventore. Aut odit vero perspiciatis asperiores!</div>
<div>Debitis ab hic sed quis illum voluptatem alias, perspiciatis delectus vel voluptatibus quaerat corporis fugit officia, laudantium velit, vero atque ullam placeat a quae quisquam dolor ut repellendus! Nostrum, dolore!</div>
<div>Accusamus facilis ipsum nihil eveniet aliquid fugiat rem ratione assumenda modi ut, odio nobis suscipit. Nam sit, explicabo repellat excepturi eum cum accusantium voluptatibus, dolore expedita veritatis nisi omnis maxime!</div>
<div>Rem iste, odio quas minus porro commodi, quisquam, esse animi saepe architecto molestiae voluptate quo. Perferendis amet quisquam dolores sunt laudantium, libero minima dignissimos asperiores itaque sapiente nulla nisi at!</div>
<div>Impedit omnis rem aut ea fugiat tenetur, aperiam asperiores maxime eaque totam unde nam blanditiis aliquid officia quae quas ipsum, ex tempora illum repudiandae! Velit impedit nihil assumenda animi dolorem.</div>
<div>At quia dolore facere, quisquam corrupti accusamus ut. Pariatur beatae earum modi quis vitae. Voluptate reprehenderit labore quos ut porro pariatur soluta, veniam laudantium beatae perferendis, recusandae molestias impedit possimus.</div>
<div>Perferendis velit facere molestias, minima quae cumque repellendus rerum error ab labore? Quaerat quasi accusantium facere voluptates maiores. In deserunt, molestias, distinctio aut reprehenderit dignissimos placeat doloremque corporis voluptas delectus!</div>
<div>Expedita, amet, quaerat. Tempore, sapiente inventore nostrum sunt, accusamus ipsam ad natus consequatur error sequi ratione voluptatem adipisci dolor facilis nesciunt magnam libero quisquam. Explicabo laboriosam rem magni reprehenderit eos.</div>
<div>Sed id aut assumenda incidunt debitis ratione, earum voluptate ex excepturi iusto totam temporibus quisquam unde eos nemo explicabo deleniti ab rerum tempore aliquid laboriosam? Labore officia numquam ex voluptas.</div>
<div>Quod in voluptatum officiis vitae est sit modi, sapiente pariatur molestiae ipsum dolore atque quibusdam molestias, quam nemo libero aperiam laborum. Minus dignissimos dolores omnis asperiores, blanditiis magnam. Est, impedit.</div>
<div>Reiciendis nam ut laboriosam voluptatum soluta optio dolore quidem asperiores illum quia debitis quae ab, neque repellat maiores sed ea voluptas perferendis excepturi labore velit, quaerat, odio. Quae, minima, soluta.</div>
<div>Quasi nemo fuga ad ullam blanditiis velit tempore, accusantium, tenetur ipsa magni amet corporis cupiditate ipsum deserunt dignissimos, quos! Explicabo adipisci modi rem. Voluptatibus quibusdam officia laudantium, omnis nihil. Veniam!</div>
<div>Doloribus sunt reprehenderit odit, hic magni beatae architecto neque accusamus id? Temporibus eveniet officia quae voluptate eius earum optio voluptates et error, ad quasi! Saepe cupiditate cumque dolore debitis incidunt.</div>
<div>Deleniti dolorum saepe itaque ab dolorem amet, quidem aliquam molestias blanditiis molestiae id. Fugiat ut tempore nisi voluptatem nulla exercitationem aut, molestiae labore officiis temporibus. Sapiente atque tempora suscipit doloribus.</div>
<div>Quaerat cupiditate voluptatum iusto dolore dolorum, sequi reprehenderit, aliquam, totam quas velit impedit, non facilis suscipit quibusdam recusandae iure doloremque a deleniti quis. Nobis ullam inventore alias veniam. Iure, excepturi.</div>
<div>Voluptates dolore unde accusantium enim, sequi, nesciunt sunt amet. Omnis molestias hic soluta itaque magnam quia aperiam quisquam, similique, facere consequuntur fugiat eaque nam ratione assumenda, voluptates eum? Et, assumenda.</div>
<div>Voluptatum distinctio quos pariatur, quia officiis dignissimos ratione nam, laudantium eum ut doloremque debitis ipsam deserunt sequi, libero quae vitae cumque nihil non. Cumque fugit commodi veniam esse molestiae facere.</div>
<div>Consequuntur nemo est, temporibus placeat quod sequi aliquam error ea quam, animi, nostrum, voluptatem commodi quis eligendi maiores natus soluta laborum ex. Ratione necessitatibus qui optio alias harum. Quos, id.</div>
<iframe id="player1" src="https://www.youtube.com/embed/krVkvyQjyBQ?enablejsapi=1&html5=1;&autoplay=1&mute=1" allowfullscreen="" frameborder="0" height="315" width="560"></iframe>
<div>Veritatis, doloremque obcaecati blanditiis minus incidunt autem suscipit modi, rem aliquid nemo deserunt nobis quibusdam optio vero temporibus cumque? Velit, aspernatur aliquam enim dolores, officiis nihil ab vero minima nesciunt.</div>
<div>Illo, alias aperiam. Ipsam deserunt ab illo eaque voluptatem numquam debitis cum nostrum cupiditate dolore minima voluptatum, repellendus vel illum veniam similique nobis dignissimos culpa tenetur labore veritatis tempore aliquid.</div>
<div>Blanditiis in, ut dolores magni pariatur corporis unde reprehenderit, quo ea ipsum fugit iusto at voluptatibus eum quisquam excepturi error sunt. Culpa modi pariatur ipsam beatae magni ratione eos quod.</div>
<div>Obcaecati commodi, quas. Fuga, consequuntur suscipit et consectetur temporibus molestiae necessitatibus quisquam corrupti unde architecto odio ab obcaecati quasi repudiandae optio iste reprehenderit, facere quaerat, harum reiciendis ratione praesentium sapiente.</div>
<div>Dolorum sed eaque quis nesciunt, voluptate assumenda veritatis praesentium obcaecati officiis sapiente deserunt harum ipsam dignissimos, doloribus exercitationem. Numquam minima et, nemo totam vitae. Aut, eum! Aut vitae, quod odit!</div>
<div>Aliquid dicta reprehenderit ea deserunt quis mollitia animi officiis dolor corporis vitae perferendis natus, illo ducimus dolore fugit eos facilis vero, voluptatem porro, ad. Ipsa assumenda animi, et magni dolores?</div>
<div>Hic recusandae repellendus molestiae harum modi magnam provident porro voluptate. Expedita ipsa voluptatibus earum, provident aspernatur mollitia accusamus quibusdam dignissimos qui! Cum quibusdam est esse. Quasi quo officia earum possimus?</div>
<div>Sint accusantium esse sapiente eum mollitia nihil ducimus, est fuga id neque nisi quaerat iste officia placeat quas, maxime et ea similique delectus aut, labore earum. Asperiores quos ad quaerat!</div>
<div>Sint sequi ea optio minus quia vitae doloribus. Repudiandae minus commodi quia consequatur sequi dolorum natus reiciendis aspernatur nam ipsam dolor, consectetur quod harum, odit, cumque id labore facilis quasi.</div>
<div>Tenetur sequi fugiat et nobis deserunt, voluptatibus! Soluta quaerat iste nesciunt expedita labore, repudiandae ex optio provident officia consequatur tenetur esse illo nihil, unde excepturi fugiat perferendis numquam similique nam?</div>
<div>Consequuntur assumenda vero alias. Repellendus dolore voluptas obcaecati tempore debitis, expedita id deserunt illum numquam. Alias dolorem cum ea repellendus explicabo fuga, odit corrupti voluptate esse magnam unde, quo perspiciatis.</div>
<div>Est voluptatem neque nam aliquid tenetur perferendis ullam reprehenderit, eius provident delectus quisquam, facilis quia natus quo itaque nisi deserunt at porro. Quidem numquam eaque porro esse dolores fugiat debitis?</div>
<div>Enim iste veniam voluptates odio voluptatem blanditiis, commodi dolorem eum quo vel rem nostrum in eligendi ipsa, repudiandae maxime amet. Doloremque ut eum, at, libero quo iste ipsa eveniet cupiditate?</div>
<div>Asperiores sint adipisci vero saepe quis quisquam eius earum quas, veritatis unde voluptates animi excepturi ipsum blanditiis omnis facilis quaerat nisi amet? Laboriosam quis quas, sed, illo repudiandae odio blanditiis!</div>
<div>Non, animi, amet? Rem qui tempora reprehenderit eos velit dolore, cum ut vitae minima? Quisquam veniam, doloremque eligendi fugiat aliquid minima! Ut sunt esse voluptatem nulla, iure harum sint deserunt!</div>
<div>Ipsa, voluptatibus praesentium fugit modi facere error saepe deserunt. Ea voluptatibus, repellat sunt. Cum aperiam rerum corrupti officiis distinctio, at quis veniam neque dolor, quia ipsum porro mollitia molestiae dicta?</div>
<div>Neque in soluta dolores, voluptate, autem debitis! Adipisci omnis qui, aut suscipit dolore delectus magnam veniam, sit aliquid id quaerat ut assumenda et itaque quam ipsum, repellendus nihil eaque natus.</div>
<div>Adipisci, quod, eaque nulla pariatur laborum deserunt cum ratione dolorum ut vero accusamus nisi aut alias dolor distinctio mollitia itaque aliquid ea incidunt. Explicabo animi odit minus esse doloremque cupiditate.</div>
<div>Cupiditate eum nam inventore labore doloremque possimus ullam, alias sed commodi perspiciatis aut, sunt quos? Optio unde excepturi dolore ex aut facilis eveniet consectetur sit, esse autem iure, nesciunt et.</div>
<div>Aut sint, laborum minus autem quisquam molestias quia fugiat itaque nam fuga labore, possimus iusto sunt. Architecto, placeat libero. Esse velit natus, culpa tenetur praesentium maiores. Inventore delectus, temporibus enim.</div>
<div>Repudiandae tempora dolore quam a. Assumenda aliquid ad reprehenderit amet vero architecto, quam sequi id eveniet natus vitae minima, velit, nulla voluptatem voluptate necessitatibus tempora repellendus ullam, iusto temporibus pariatur!</div>
<div>Tempora sapiente doloribus, illum magnam? Commodi culpa porro illum adipisci eveniet nulla temporibus reprehenderit impedit corrupti distinctio vel, ducimus numquam quasi deserunt accusantium eos sed mollitia sint neque ad vero.</div>
<div>Quas recusandae, quaerat quia a eaque nemo. Labore qui consequatur perferendis inventore, distinctio asperiores quam dolore! Culpa rem a tenetur odit, quisquam atque incidunt voluptatem animi recusandae quam, saepe vero.</div>
<div>Ea nostrum, nesciunt odio ducimus impedit molestias magni delectus sequi numquam esse possimus aliquam culpa laboriosam, rem a iusto dicta fugit, ratione? Pariatur quos distinctio blanditiis, vero laudantium quidem, libero.</div>
<div>Est adipisci maiores et nulla. Laboriosam veniam, dolorum esse totam repellendus necessitatibus molestiae praesentium, consequuntur, accusamus aliquam officiis, accusantium. Sint sapiente esse qui veniam accusamus delectus deserunt libero odio necessitatibus!</div>
<div>Commodi blanditiis laudantium debitis sequi, sapiente porro deserunt eaque, explicabo mollitia nam maiores iusto hic quidem earum! Eligendi mollitia ipsum voluptas unde dolorem recusandae quos ab error deserunt consectetur. Eligendi.</div>
<div>Eius aspernatur voluptates, voluptatibus pariatur fugiat voluptate suscipit corporis rem dolore repellendus hic quaerat quisquam, accusamus animi minus, quae in sunt. Repudiandae ad sunt autem iusto, quisquam pariatur totam, libero.</div>
<div>Natus, nihil, assumenda. Consequuntur, cumque odit odio placeat perferendis tempore architecto cupiditate natus nesciunt modi officiis facilis dolores, mollitia fuga magni maxime ad reiciendis, debitis sit voluptate minus sapiente praesentium.</div>
<div>Voluptatibus esse magni cupiditate obcaecati porro. Ipsam est modi, veniam libero! Laboriosam iste dolore tenetur nobis sequi eligendi vel dolorem, illo soluta minus labore tempore est recusandae, repudiandae, delectus rerum!</div>
<div>Veritatis fugiat, quod hic architecto, laudantium inventore at similique recusandae tempora, rerum deserunt vero voluptas totam aliquam, a harum minus id animi aperiam. Pariatur magni doloribus praesentium inventore illum recusandae?</div>
<div>Vero, cum consequatur qui maiores sit veritatis non harum distinctio, nobis optio ad dicta nostrum placeat vitae similique voluptatem minima quia voluptate magni voluptas officia? Dolor sed quo assumenda debitis.</div>
Here i got the full working code.
<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<script type="text/javascript">
var player;
var playerInfoList = ['player','player1'];
function onYouTubePlayerAPIReady() {
// create the global player from the specific iframe (#video)
for(var i = 0; i < playerInfoList.length;i++) {
var curplayer = playerInfoList[i];
player = new YT.Player(curplayer, {
events: {
// call this function when player is ready to use
'onReady': onPlayerReady,
'onStateChange' : onPlayerChange
}
});
}
}
function onPlayerReady(event) {
var curplayer = event.target.a;
var status = event.target;
jQuery(window).scroll(function() {
$offtop = jQuery(curplayer).offset().top;
$wofftop = jQuery(window).scrollTop();
$winnerheight = jQuery(window).innerHeight();
$calcHeight = $winnerheight - 200;
if (($wofftop > $offtop - $calcHeight) && ($wofftop < $offtop + 200) && !jQuery(curplayer).hasClass("paused")){
event.target.playVideo();
} else {
event.target.pauseVideo();
}
});
}
function onPlayerChange(event) {
var curplayer = event.target.a
if (document.activeElement.id === curplayer.id) {
if (event.data === 1) {
jQuery(curplayer).removeClass("paused");
} else if (event.data === 2) {
jQuery(curplayer).addClass("paused");
}
$(curplayer).blur();
}
}
// Inject YouTube API script
var tag = document.createElement('script');
tag.src = "https://www.youtube.com/player_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
</script>
Im showing a preview for a news post, and when the user clicks on read more (or the whole div, actually) it should open in a full-screen manner. Which it does. But when I try to close it, it doesnt work. Its like it doesnt want to remove the class again.
TL;DR:
The on click event for the second function does not execute.
Here's my code:
/* NEWS */
$('.news-entry').on('click', function() {
$(this).addClass('open');
$(this).find('.close-btn').addClass('display-close-btn');
$(this).find('.news-all-text').addClass('display-all-text');
$(this).find('.news-text').removeClass('news-read-more');
$('html, body').animate({
scrollTop: $(this).find(".scrollTo").offset().top - 20
}, 600);
});
/* NEWS CLOSE BTN */
$('.close-btn').on('click', function() {
$('.news-entry').removeClass('open');
$('.close-btn').removeClass('display-close-btn');
$('.news-full-text').removeClass('display-full-text');
$('.news-text').addClass('news-read-more-btn');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="section-news">
<div class="news-entry">
<div class="news-image">
<div class="entry-number">25</div>
<div class="horizontal-hr"></div>
<img src="img/news/2.png" />
<div class="close-btn">
<button class="circle scaleUp" data-animation="scaleDown" data-remove="3000"></button>
</div>
</div>
<div class="news-text scrollTo">
<p class="news-small-title">Doers - News</p>
<h2 class="news-title">Doers is Looking For a New Junior Designer</h2>
<hr class="news-hr"></hr>
<p class="news-teaser-text">Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud.</p>
<p class="news-all-text">
At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium voluptatum deleniti atque corrupti quos dolores et quas molestias excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia
animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit quo minus id quod maxime placeat facere possimus, omnis voluptas assumenda
est, omnis dolor repellendus. Temporibus autem quibusdam et aut officiis debitis aut rerum necessitatibus saepe eveniet ut et voluptates repudiandae sint et molestiae non recusandae. Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis
voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat.
<br />Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit quo minus id quod maxime placeat facere possimus, omnis voluptas assumenda est, omnis dolor repellendus. Temporibus autem quibusdam et aut officiis debitis aut rerum
necessitatibus saepe eveniet ut et voluptates repudiandae sint et molestiae non recusandae. Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat.
</p>
<p class="news-read-more">Read More</p>
</div>
</div>
<div class="news-entry">
<div class="news-image">
<div class="entry-number">24</div>
<div class="horizontal-hr"></div>
<img src="img/news/1.png" />
<div class="close-btn">
<button class="circle scaleUp" data-animation="scaleDown" data-remove="3000"></button>
</div>
</div>
<div class="news-text scrollTo">
<p class="news-small-title">Doers - News</p>
<h2 class="news-title">Say ‘Hi’ to Our New Intern</h2>
<hr class="news-hr"></hr>
<p class="news-teaser-text">Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud.</p>
<p class="news-all-text">
At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium voluptatum deleniti atque corrupti quos dolores et quas molestias excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia
animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit quo minus id quod maxime placeat facere possimus, omnis voluptas assumenda
est, omnis dolor repellendus. Temporibus autem quibusdam et aut officiis debitis aut rerum necessitatibus saepe eveniet ut et voluptates repudiandae sint et molestiae non recusandae. Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis
voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat.
<br />Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit quo minus id quod maxime placeat facere possimus, omnis voluptas assumenda est, omnis dolor repellendus. Temporibus autem quibusdam et aut officiis debitis aut rerum
necessitatibus saepe eveniet ut et voluptates repudiandae sint et molestiae non recusandae. Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat.
<br />Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit quo minus id quod maxime placeat facere possimus, omnis voluptas assumenda est, omnis dolor repellendus. Temporibus autem quibusdam et aut officiis debitis aut rerum
necessitatibus saepe eveniet ut et voluptates repudiandae sint et molestiae non recusandae. Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat.
</p>
<p class="news-read-more">Read More</p>
</div>
</div>
<div class="news-entry">
<div class="news-image">
<div class="entry-number">23</div>
<div class="horizontal-hr"></div>
<img src="img/news/3.png" />
<div class="close-btn">
<button class="circle scaleUp" data-animation="scaleDown" data-remove="3000"></button>
</div>
</div>
<div class="news-text scrollTo">
<p class="news-small-title">Doers - News</p>
<h2 class="news-title">Winter Holiday - What's Your Top Wish?</h2>
<hr class="news-hr"></hr>
<p class="news-teaser-text">Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud.</p>
<p class="news-all-text">
At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium voluptatum deleniti atque corrupti quos dolores et quas molestias excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia
animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis.
<p class="news-read-more">Read More</p>
</div>
</div>
</div>
<!-- END JOURNAL ENTRIES -->
When I inspect it, I can see that something happens to .news-entry (it blinks?).
What could be wrong?
Your Problem: .close-btn is in .news-entry. So when you click in close button, after calling close button click function it will also call new entry click function. Solution: move .close-btn outside of .news-entry or use return false in close button click function.
You can try this DEMO LINK HERE
.Update the script...
/* NEWS CLOSE BTN */
$('.close-btn').on('click', function() {
$('.news-entry').removeClass('open');
$('.close-btn').removeClass('display-close-btn');
$('.news-full-text').removeClass('display-full-text');
$('.news-text').addClass('news-read-more-btn');
return false; // add this line.
});
With that little info I can't help you, consider making an small jsfiddle with your code to find the issue.
But here are some steps to debug it:
Check for errors on the console: you could have syntax errors and the output from the console will show that.
Confirm the close button click event is triggering: Add a console.log to the function and see if it is actually triggering.
If it is not triggering review the class selector and the markup, to make sure the click is not happening on another element on top of the button.
Manually remove the classes from you elements(using the inspector tools in your browser) to see if that provides you the expected result. There's a chance the code is executing and the classes are removed/added but the result is not the expected.
Basically get familiar with the debugging tools for web, specially the console.
<div id="section-news">
<!--add id-->
<div class="news-entry" id="news-entry_1">
<div class="news-image">
<div class="entry-number">25</div>
<div class="horizontal-hr"></div>
<img src="img/news/2.png" />
<div class="close-btn" id="close-btn_1"><button class="circle scaleUp" data-animation="scaleDown" data-remove="3000"></button>
</div>
</div>
<!--add id-->
<div class="news-text scrollTo" id="news-text_1">
<p class="news-small-title">Doers - News</p>
<h2 class="news-title">Doers is Looking For a New Junior Designer</h2>
<hr class="news-hr"></hr>
<p class="news-teaser-text">Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud.</p>
<p class="news-all-text">
At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium voluptatum deleniti atque corrupti quos dolores et quas molestias excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit quo minus id quod maxime placeat facere possimus, omnis voluptas assumenda est, omnis dolor repellendus. Temporibus autem quibusdam et aut officiis debitis aut rerum necessitatibus saepe eveniet ut et voluptates repudiandae sint et molestiae non recusandae. Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat.
<br />
Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit quo minus id quod maxime placeat facere possimus, omnis voluptas assumenda est, omnis dolor repellendus. Temporibus autem quibusdam et aut officiis debitis aut rerum necessitatibus saepe eveniet ut et voluptates repudiandae sint et molestiae non recusandae. Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat.
</p>
<p class="news-read-more">Read More</p>
</div>
</div>
<!--add id-->
<div class="news-entry" id="news-entry_2">
<div class="news-image">
<div class="entry-number">24</div>
<div class="horizontal-hr"></div>
<img src="img/news/1.png" />
<div class="close-btn" id="close-btn_2"><button class="circle scaleUp" data-animation="scaleDown" data-remove="3000"></button>
</div>
</div>
<div class="news-text scrollTo" id="news-text_2">
<p class="news-small-title">Doers - News</p>
<h2 class="news-title">Say ‘Hi’ to Our New Intern</h2>
<hr class="news-hr"></hr>
<p class="news-teaser-text">Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud.</p>
<p class="news-all-text">
At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium voluptatum deleniti atque corrupti quos dolores et quas molestias excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit quo minus id quod maxime placeat facere possimus, omnis voluptas assumenda est, omnis dolor repellendus. Temporibus autem quibusdam et aut officiis debitis aut rerum necessitatibus saepe eveniet ut et voluptates repudiandae sint et molestiae non recusandae. Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat.
<br />
Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit quo minus id quod maxime placeat facere possimus, omnis voluptas assumenda est, omnis dolor repellendus. Temporibus autem quibusdam et aut officiis debitis aut rerum necessitatibus saepe eveniet ut et voluptates repudiandae sint et molestiae non recusandae. Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat.
<br />
Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit quo minus id quod maxime placeat facere possimus, omnis voluptas assumenda est, omnis dolor repellendus. Temporibus autem quibusdam et aut officiis debitis aut rerum necessitatibus saepe eveniet ut et voluptates repudiandae sint et molestiae non recusandae. Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat.
</p>
<p class="news-read-more">Read More</p>
</div>
</div>
<div class="news-entry" id="news-entry_3">
<div class="news-image">
<div class="entry-number">23</div>
<div class="horizontal-hr"></div>
<img src="img/news/3.png" />
<div class="close-btn" id="close-btn_3"><button class="circle scaleUp" data-animation="scaleDown" data-remove="3000"></button>
</div>
</div>
<div class="news-text scrollTo" id="news-text_3">
<p class="news-small-title">Doers - News</p>
<h2 class="news-title">Winter Holiday - What's Your Top Wish?</h2>
<hr class="news-hr"></hr>
<p class="news-teaser-text">Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud.</p>
<p class="news-all-text">
At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium voluptatum deleniti atque corrupti quos dolores et quas molestias excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis.
<p class="news-read-more">Read More</p>
</div>
</div>
</div>
<script>
$('.close-btn').on('click', function() {
//get id for the close button
var index=$(this).attr("id");
var idIndex=index.split("_")
//remove class using id
$('#news-entry_'+idIndex[1]).removeClass('open'); //check if id is getting fetched prperly
$('#close-btn_'+idIndex[1]).removeClass('display-close-btn');
$('#news-full-text_'+idIndex[1]).removeClass('display-full-text');
$('#news-text_'+idIndex[1]).addClass('news-read-more-btn');
});
</script>