jQuery 中的 setTimeout 函数不起作用

时间:2021-04-21 21:16:27

标签: javascript jquery

如果文档中存在一个类并且该类具有一些特定的数据属性,我正在尝试使用设置时间函数。所以我已经开始以非常通用的方式进行编码,并且还尝试了所有方法,即使在文档中使用 setTimeout功能,但不工作...

这是代码

jQuery(document).ready(function(jQuery){
    if( jQuery('.conversion-content').length > 0 ){
        var thread_id = jQuery('.conversion-content').attr('data-thread-id');
        var sender = jQuery('.conversion-content').attr('data-sender');
        setTimeout(function(){
            updateConversation(thread_id, sender);
        }, 2000);
    }
    function updateConversation( thread_id, sender ){
        console.log(thread_id,sender);
    }
});

它第一次工作但从第二次开始不工作,我已经从元素检查中取出了 setTImeout 函数但没有工作。

1 个答案:

答案 0 :(得分:0)

首先,您应该在计时器内分配您的 .main-menu > nav > ul { display: flex; justify-content: center; } thread_id,以便它会及时更改。

第二件事......它只发射一次,因为你没有使用sender,而是setInterval()。只有第一个在时间上重复,第二个延迟执行(一次)。

第三件事是,如果在开始时 setTimeout() 不会被满足,计时器甚至不会被初始化。所以你也应该把它放在计时器里。