2010-06-07 61 views
0

我有兩個字段,一個文本框和一個Div元素。 我有文本框的onblur事件和div元素的onclick事件。 當我點擊div元素的文本框的onblur事件發生,而不是div元素的onclick事件。如何剿onblur事件時,我事先的div元素上單擊如何停止提高事件

感謝

+0

點擊事件是否發生在onblur之後? – 2010-06-07 13:30:57

回答

0

嘗試使用semafore。

如果觸發了click事件,則將semafore設置爲true並檢查blur事件調用中的值。如果屬實 - 不要執行該操作。

成功執行單擊事件後,將semafore重置爲false。

0

我不確定你在做什麼,是不是正確的方式。 但是,這將使用名爲「F」標誌解決您的問題:

<head> 
<script type="text/javascript"> 
    var f = 0; 
    function f1() { 
     if (f == 0) 
      alert('blur'); 
    } 
    function f2() { 
     alert('click'); 
    } 
    function f3() { 
     f = 1; 
    } 
    function f4() { 
     f = 0; 
    } 
</script> 
</head> 
<body> 
    <input type="text" onblur="f1();" /> 
    <div onclick="f2();" onmouseover="f3();" onmouseout="f4();"> 
     Click Me! 
    </div> 
</body> 

祝你好運!