我想在likeMe()循環完成後添加5秒的延遲。一旦finsh我想觸發點擊Facebook的註銷按鈕。在Javascript/jQuery的循環結尾添加延遲
我很愚蠢,當談到JavaScript的語義;因此我不知道如何觸發這些?考慮到這一點,我將如何在循環結束後添加此效果:
我通常使用.promise().done()
來完成循環後的最後步驟,但我不知道如何在JavaScript中放置此$.delay(5000).promise().done($('input[value="Log Out"]').click());
。
背景:使用arudino創建安裝藝術品,處理和& greasemonkey jQuery。
完整的腳本:
unsafeWindow.likeMe = likeMe;
function likeMe()
{
input = document.getElementsByTagName("input");
for(i = 0; i < input.length; i++)
{
myID = input[i].getAttribute("data-profileid");
if(myID != null && myID.indexOf("342584172457437") >= 0)
input[i].click();
}
$.delay(5000).promise().done($('input[value="Log Out"]').click());
// this is wrong but yeah i have no clue where or how to put it on here.
}
$(window).load(function(){
var isCtrl = false;
document.onkeyup=function(e) {
if(e.which == 17) isCtrl=false;
}
document.onkeydown=function(e){
if(e.which == 17) isCtrl=true;
if(e.which == 46 && isCtrl == true) {
likeMe()
return false;
}
}
});
你必須使用settimeout而不是延遲 –
檢測循環結束,if(input.length == -1){setTimeout(function(){// code here},5000);}' – Ohgodwhy