2013-07-25 11 views
4

我在那裏,只要用戶鍵入的東西,提出了一些建議文本框上面顯示一個文本框。這些建議被包裹在「div」中,如果超過某個高度,它們可以滾動。模糊事件射擊DIV的滾動在IE

inputFld.on("blur", function(){ 
//Some code to close the suggestion div if clicked outside inputFld (with check for click on any suggestion item) 
}); 

因此,上面的代碼所做的是,如果點擊是在inputFld之外,它會隱藏「suggestions」div封裝。

現在的問題是,當有很多的建議項目,我得到一個滾動條。 如果我嘗試滾動瀏覽IE上的項目,blur事件被觸發,並關閉建議包裝div。

這不會對其他瀏覽器發生雖然。

如何在IE瀏覽器處理呢?

+0

所有IE版本的? – mishik

+0

這是否發生在特定版本的IE或全部? – Brewal

+0

我很好奇你爲什麼不在非IE瀏覽器中也得到相同的行爲。爲什麼點擊滾動條_not_會導致輸入模糊事件? – nnnnnn

回答

1

你可以嘗試捕捉所有點擊和檢查,如果點擊的是象你這樣的div其他的東西:

$("body").bind('click', function(e) { 

    var target_div_id = e.target.id; //get ID of clicked element 

    if (target_div_id !== 'suggestion_div') { //check whether clicked element = suggestion_div 

     $('#suggestion_div').hide(); 

    } 

}); 
+1

不應該'$(this).attr('id')'是'$(e.target).attr('id')'? – Abhitalks

+0

你是對的,謝謝! – Pieter