2015-01-15 46 views
-3

我想要一個可以阻止另一個函數運行的函數。它可以在JavaScript或jQuery中。按下元素時停止JavaScript函數

這是一款遊戲,所以div 1一遍又一遍地被點擊。

var makeBox=//a function; 
$("#div1").click(function() { 

    makeBox  

}); 


$("#div2").click(function() { 

    //stop make box 

}); 

我希望這是更清楚了吧

+0

它不清楚你的問題,你有什麼嘗試?你能粘貼一些你的代碼嗎? – avcajaraville 2015-01-15 16:08:15

+0

當'#div2'被點擊時,你只是想刪除'#div1'上的點擊事件處理程序嗎? – 2015-01-15 16:23:10

回答

1

爲什麼不嘗試重新分配事件處理函數?

var makeBox=//a function; 
$("#div1").click(function() { 

    makeBox  

}); 


$("#div2").click(function() { 
    $("#div1").click(function(){ 
     //Do nothing 
    }); 
}); 

,如果你想讓它再工作,但我不知道到底是什麼你正在嘗試做的你可能以後需要再次重新分配它。

+0

謝謝你解決了我的問題:0 – 2015-01-15 16:56:20

0

號JavaScript是單線程的。當另一個函數正在運行時,click事件不會被處理。 (您的函數可能會調用其他函數,使用事件,超時等等,這將允許中斷,但在您的問題中沒有任何跡象表明這一點)。