国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

window.onresize多次觸發的解決方法_javascript技巧

來源:懂視網 責編:小采 時間:2020-11-27 21:15:19
文檔

window.onresize多次觸發的解決方法_javascript技巧

window.onresize多次觸發的解決方法_javascript技巧:之前做一個擴展,需要在改變窗口大小的時候保證頁面顯示正常,于是用了 window.onresize 但是發現每次 onresize 后頁面中狀態總是不對,后來查找出來原來是 onresize 事件觸發了多次找成的,于是網上搜集了下解決辦法,整理一下。 // 關于 onresi
推薦度:
導讀window.onresize多次觸發的解決方法_javascript技巧:之前做一個擴展,需要在改變窗口大小的時候保證頁面顯示正常,于是用了 window.onresize 但是發現每次 onresize 后頁面中狀態總是不對,后來查找出來原來是 onresize 事件觸發了多次找成的,于是網上搜集了下解決辦法,整理一下。 // 關于 onresi

之前做一個擴展,需要在改變窗口大小的時候保證頁面顯示正常,于是用了 window.onresize 但是發現每次 onresize 后頁面中狀態總是不對,后來查找出來原來是 onresize 事件觸發了多次找成的,于是網上搜集了下解決辦法,整理一下。
//
關于 onresize 事件觸發次數,不同瀏覽器不同,safari, opera, firefox 都是一次(分別只用了一個版本測試,都是較新的);
//ie6 在 quirk 下觸發 2 次,標準下 3 次;ie7,8 在 quirk 和 standard 都是兩次。
代碼如下:
window.onresize = function(){
console.log( 'hello world');
}
onresize 觸發多少次并不重要,重要的是解決辦法:在觸發多次的情況下之調用一次幫定到 onresize 上的函數
//
//debounce 這個詞不知道怎么翻譯,兄弟我非科班出身,不敢輕易翻譯,以免怡笑大方。:)
//
var debounce = function (func, threshold, execAsap) {
var timeout;
return function debounced () {
var obj = this, args = arguments;
function delayed () {
if (!execAsap)
func.apply(obj, args);
timeout = null;
};
if (timeout)
clearTimeout(timeout);
else if (execAsap)
func.apply(obj, args);
timeout = setTimeout(delayed, threshold || 100);
};
}

// 說明代碼不是我寫的。
// 代碼說明:
debounce 接受 3 個參數,后兩個可選;第一個是要 debounce 的函數, 第二個代表 debouce 的時間間隔,第三個在時間段的開始還是結束執行函數;
debounce 返回包裝好的函數,該函數兩次執行間隔至少是 threshold,并且小于 threshold 間隔的調用會重新開始計時( 兩次調用的時間間隔);
把 clearTimeout( timeout ) 換為 timer = null; 返回函數兩次執行間隔至少是 threshold,并且小于 threshold 間隔的調用會重新開始計時( 兩次調用的時間間隔);
// 解決 onresize 多次調用
代碼如下:
window.onresize = debounce( function(){
alert( 'hello world');
}, 100, true)

// 在自動補齊中為了減少請求服務器次數也會用到 debounce, 只有連續敲鍵間隔大于某個值才會發送 ajax

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

window.onresize多次觸發的解決方法_javascript技巧

window.onresize多次觸發的解決方法_javascript技巧:之前做一個擴展,需要在改變窗口大小的時候保證頁面顯示正常,于是用了 window.onresize 但是發現每次 onresize 后頁面中狀態總是不對,后來查找出來原來是 onresize 事件觸發了多次找成的,于是網上搜集了下解決辦法,整理一下。 // 關于 onresi
推薦度:
標簽: 方法 多次 js
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 91精品一区二区三区在线观看 | 国产区在线看 | 黄色毛片免费在线观看 | 亚洲一区二区免费视频 | 久久er99| 亚洲一区二区在线免费观看 | 国产精品毛片久久久久久久 | 精品久久久久久久一区二区手机版 | 亚洲国产精品综合久久网络 | 久久国产午夜一区二区福利 | a欧美在线 | 国产美女视频黄a视频免费全过程 | 999久久久免费精品国产牛牛 | 美国一级大黄大色毛片 | 日韩首页 | 久久这里只有精品9 | 一道本在线播放 | 国产午夜高清一区二区不卡 | 欧美一区二区日韩一区二区 | 久久久这里有精品999 | 久久精品国产欧美日韩99热 | 欧美日韩高清在线 | 欧美2区| 欧美在线观看日韩欧美在线观看 | 夜色毛片永久免费 | 国产一级高清视频免费看 | 国产一区亚洲二区三区毛片 | 日本美女一区二区 | 国产亚洲午夜精品a一区二区 | 日本精品一区二区三区在线观看 | 国产精品系列在线观看 | 91中文 | 99久久精品免费国产一区二区三区 | 亚洲福利网站 | 久久96国产精品久久久 | 影音先锋中文字幕资源 | 国产精品亚洲一区二区三区在线播放 | 日韩小视频在线观看 | 日韩 亚洲 制服 欧美 综合 | 日韩资源在线 | 精品国产欧美一区二区五十路 |