在运行另一个函数之前完成.click()函数

时间:2016-09-03 00:26:32

标签: javascript jquery cookies

我有一个函数可以在每个链接上找到链接标记和调用点击功能。我想在点击功能完成后调用另一个函数(SecondFunction)。但是在点击功能完成之前调用第二个函数。我希望在单击链接后调用第二个函数,以便在下一个单击的页面上调用该函数。

setInterval(function(){
            $TabLinks= Get all links

            $TabLinks.each(function(index, value){       
                $(this).click(); // Do not worry about syntax, Click on first link(tab), then after clicking on tab,
 I want SecondFunction() to be called
                LinkClicked = 1
                SecondFunction() // This function should be called when it is on clicked page.
},1500)

 function SecondFunction(){
do bunch of other clicking.
setInterval(function(){
},1000)
}

现在,它转到第一个功能,转到点击功能但它没有进入下一个标签,这意味着点击功能没有完成。在转到下一个选项卡之前,它转到SecondFunction()函数并在click()函数完成之前开始运行该函数。

2 个答案:

答案 0 :(得分:0)

我可能错了,但我相信javascript的事件流的工作方式是你可以将SecondFunction()包含在超时0中,如:

 setTimeout(secondFunction,0);

即使超时为0,javascript也会在当前事件流完成后将事件排队。

我会测试并回复你。

答案 1 :(得分:0)

setTimeout(function () { $(this).click(); }, 0);