比方說,我附上一個javascript「改變」事件處理程序,以一個select元素,一些調度一個Ajax請求從服務器加載一些東西。如何處理IE選擇平變化和AJAX請求
這是在Firefox罰款。但是,在IE中,每次使用鼠標滾輪快速滾動組合框選項時,更改事件都會觸發。這很麻煩,因爲它用請求發送服務器,並且不能保證請求以正確的順序返回,因此客戶端狀態可能會變得不一致。
現在,我們以前的解決方法是,我們將推出一個超時的變化處理,使得它將等待一秒鐘的一小部分實際調度請求之前。如果在那麼短的時間內,另一個更改事件進入,我們取消之前的超時並啓動一個新的超時,從而防止垃圾郵件發送多個請求。現在
,而這似乎是工作,這是一個有點hackish,我想知道是否有任何更好的辦法。是否有一個我們可以掛鉤的不同事件,以便在用鼠標滾動時不會重複觸發?或者我們應該完全禁用鼠標滑輪(onmousewheel =「return false;」)? Firefox似乎不支持通過組合框進行鼠標滑動,但我不確定是否禁用鼠標滾輪是一種嚴重的可用性禁止或其他操作。
誰能推薦其他解決辦法?
不錯的主意......不解決服務器問題而不必要地雖然垃圾郵件d:抽象的邏輯一「的onPause」功能,它會顯得不那麼哈克 – 2009-10-10 09:10:22