首頁 > web前端 > js教程 > 主體

如何僅在調整大小事件完成後觸發操作?

Barbara Streisand
發布: 2024-11-06 12:24:03
原創
327 人瀏覽過

How to Trigger an Action Only After the Resize Event Completes?

等待「調整大小」事件結束以觸發操作

通常在使用響應式設計時,需要執行僅在調整大小過程完全完成後才執行操作。然而,使用 $(window).resize() 的傳統事件處理可能會在調整大小過程中觸發多個調用,從而導致不良行為。

解決方案:使用 setTimeout() 和clearTimeout()

為了實現所需的行為,可以結合使用 setTimeout() 和clearTimeout()。以下是範例:

function resizedw() {
  // Haven't resized in 100ms!
}

var doit;
window.onresize = function () {
  clearTimeout(doit);
  doit = setTimeout(resizedw, 100);
};
登入後複製

這個方法利用計時器來延遲 resizedw() 函數的執行。當調整大小事件發生時,它會清除任何現有的計時器並啟動新的計時器。如果調整大小過程在 100 毫秒內繼續,則計時器將再次重設。只有當調整大小停止 100 毫秒時,才會呼叫 resizedw() 函數。

jsfiddle 上的範例:

有關此解決方案的工作範例,請參閱答案中提供的 jsfiddle 連結。

以上是如何僅在調整大小事件完成後觸發操作?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!