2011-12-11 67 views
1

我從早期的問題實現了這一點到我的網站,但由於某種原因,在Firefox和IE瀏覽器下拉框自行滾動。我無法弄清楚爲什麼!下拉框不斷滾動

只需點擊新聞提要,並在框下降,它會自動下降。它應該會下降,如果我再次點擊新的或新的點擊量,它應該會下降。但它並沒有這樣做,它只是彈回來了。

我正在使用JavaScript。這裏發生了什麼?

$('#bottom').click(function() { 
    $('#content').slideDown(); 
}); 

$(document).click(function(e) { 
    if (e.target.id !='bottom') { 
     $('#content').slideUp(); 
    } 
}); 

回答

4

更改#bottom事件處理了一下,以防止click事件的冒泡一路攀升至document

//it is important to declare the `event` variable as a parameter of this anonymous function so it can be accessed inside the function 
$('#bottom').click(function(event) { 
    event.stopPropagation(); 
    $('#content').slideDown(); 
}); 

什麼是你的代碼發生的是,事件處理程序#bottom元素正在被觸發,然後之後點擊document的事件處理程序自從click事件冒泡DOM以後觸發。 event.stopPropagation()將停止冒泡事件。

Google文檔event.stopPropagation()http://api.jquery.com/event.stoppropagation/

+0

好了我繼續做它!它適用於我的電腦端,但是當上傳到我的服務器,它仍然有Firefox和這樣的錯誤? – mystycs

+0

或者我應該清除緩存? – mystycs

+0

明白了!有用! – mystycs