尝试运行JS代码时出现未定义的错误

时间:2016-12-31 14:13:35

标签: javascript

var i = 0;

function clickPlay(){
    var playButtons = $('.player-play');
    playButtons[i].click();
    i++;
}

function playVideos() {
    setTimeout(function () {
        clickPlay();
        playVideos();
    }, 5000); // Change this value to speed up or slow down the time interval
}

playVideos();

这应该播放页面上的每个视频,但每次我运行它都会得到

Uncaught TypeError: Cannot read property 'click' of undefined
    at clickPlay (<anonymous>:5:16)
    at <anonymous>:11:9

播放第一个视频,仅此而已。我是JS的菜鸟,但我会尝试你说的一切。谢谢!

1 个答案:

答案 0 :(得分:0)

您对该循环没有任何限制,因此您无法控制数组的范围。

更好地使用jQuery.each

function playVideos() {
    $('.player-play').each(function () {
       var _this = $(this);
       setTimeout(function () {
           _this.click();
       }, 5000);
    });
}

playVideos();