javascript - 手动暂停时停止自动播放 YouTube 视频

标签 javascript jquery youtube-api youtube-data-api youtube-javascript-api

当 YouTube 视频在滚动时可见时,我正在使用自动播放 YouTube 视频,但如果我手动暂停视频并将视频滚动到屏幕外,然后滚动回视频,它会再次开始。 我想要的是,如果我手动暂停它,即使滚动它也不应该再次播放,并且当我再次播放它时,它应该遵循滚动时播放/暂停的相同功能。 请注意:该代码片段不起作用,但如果您将代码复制到本地,它将起作用。

<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>

最佳答案

这里我得到了完整的工作代码。

<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>

关于javascript - 手动暂停时停止自动播放 YouTube 视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51041205/

相关文章:

javascript - 如何在onclick按钮传递函数的js函数中传递字符串第二个参数?

javascript - 在 d3 中制作动画弧响应?

javascript - AngularJS:如果还没有,则将元素添加到数组中,在内容重新加载之前但不能在内容重新加载之后工作

javascript - jquery.min.js :2 Uncaught TypeError: Cannot read property 'replace' of undefined (javascript)(laravel)

youtube-api - 每天的 YouTube 查询数变为 0

javascript - 获取 YouTube 字幕

html - 将 HTML5 Canvas 序列转换为视频文件

javascript - ListBoxFor为每个选项元素添加数据属性

javascript 或 jquery 文件大小

javascript - 使用 jQuery 显示/隐藏复选框事件上的字段