2009-02-19 39 views

回答

6

你可以聲明一個命名函數是這樣的:

function always_false() { return false; } 

然後使用always_false()無論你將有先前創建的匿名功能。

0

您可以使用的preventDefault方法取消事件默認動作:

$("form").bind("submit", function(event){ 
    event.preventDefault(); 
}); 
0

你真的認爲這是太多打字?

爲什麼不叫f設置爲false一個全局變量,並使用function() {return f;}

+0

function f(){return false; } – 2009-02-19 03:29:00

+0

似乎是一個虛假的經濟:-7 – 2009-02-19 03:44:44

+0

@Ates - 把我帶到那裏:) – zildjohn01 2009-02-19 04:21:46

2

我經常在我的共同的js文件的頂部定義的"no op" function

function nop() { return false } 

我使用它,每當我需要一個「什麼都不做」或「取消事件」處理程序(如div.oncontextmenu = nop)。在IE中,這具有額外的好處,即在動態創建類似[匿名]函數並將它們分配給事件處理程序時,內存不會泄漏。至少這就是IE Drip告訴我的。

0

只需將事件處理程序設置爲空。這比分配給「返回false」函數IMO更清潔,因爲它完全刪除了事件處理程序。

myButton.onclick = null;

1

快捷(的ECMAScript 2015年):

_ => false 

或者,只需按5個按鍵:

_=>!1 

但我寧願建議您使用以下非jQuery的事件處理程序。

event => event.preventDefault() 
相關問題