1
比方說,我這樣做:mootools的禁用或攔截added事件
$('field').addEvents ({
'focus' : function() { // do some stuff }
'blur' : function() { // do other stuff }
});
這是我所有的文本輸入字段的默認行爲。我現在想要做的是這樣的事情
<button id='shinyButton' name='shinyButton'>Poke Me</button>
則:
$('shinyButton').addEvent('click', function() {
stopDefaultBlurFunctionInCurrentlyFocussedField();
// do seriously cool stuff
if (finishedDoingSeriouslyCoolStuff) {
$('field').focus(); // return focus to input field
}
}
這樣:
1)我如何stopDefaultBlurFunctionInCurrentlyFocussedField();?
2)我該如何判斷我是否真的完成了DoingSeriouslyCoolStuff?
點擊一個按鈕,而專注於場是棘手的,它會激發關閉一個模糊以及點擊您可以使用的模糊回調短暫的延遲,你可以清除。在點擊 - 不理想,因爲點擊可以是一個長時間的點擊憑藉鼠標持有時間超過預期 - 或者你可以與所有這些代表團去父母的形式,你可以檢查eventTargets等......這不是一個簡單的任務。你可能會遇到問題您還可以在按鈕上添加鼠標懸停事件,該按鈕在模糊檢查和優雅退出的字段上設置標誌... – 2012-01-05 11:03:53
gotcha。所以爲了我的意圖和目的:NO。 :D再次感謝@Dimitar。作爲一個旁註,我看到你也是自學成才的。給我希望!大聲笑。 – WhiteRau 2012-01-05 18:42:59
nah-它可以工作。檢查http://jsfiddle.net/dimitar/edsqg/1/ - 就像我說的那樣,如果您將鼠標懸停在提交上,則禁用所需字段上的模糊事件,因此點擊它將不會觸發字段驗證。任何其他模糊會。 – 2012-01-06 11:14:18