請選擇 進入手機版 | 繼續訪問電腦版

東里論壇

 找回密碼
 立即註冊

QQ登录

只需一步,快速开始

搜索
查看: 950|回復: 0

[使用心得] jquery 如何对$(window).scroll() 方法进行禁用和启用

[複製鏈接]

312

主題

459

帖子

2910

積分

管理員

Rank: 9Rank: 9Rank: 9

積分
2910
發表於 2018-4-30 23:28:48 | 顯示全部樓層 |閱讀模式
如果是比较新的jquery,可以直接用$(window).off('scroll')把scroll事件解绑,但如果要重新启用相同函数的话,在绑定的时候不要使用匿名函数,否则重新把绑定函数写一次:
  1. function aaa () {
  2.     // do something
  3. }
  4. // 绑定scroll事件
  5. $(window).on('scroll', aaa);
  6. // 解绑scroll事件
  7. $(window).off('scroll', aaa);
複製代碼


旧版本jquery可以使用bind/unbind方法。

比如$(window).scroll(function aaa (){}),就是在滚动窗口时执行aaa函数,当aaa开始执行时,如果未执行完成就再次滚动窗口,就会造成aaa的重复执行。此时,应该在函数内部第一行即解绑scroll事件。当完成aaa时再次绑定scroll事件。此方法可完美解决函数重复加载的问题。

原生JS如何解决此问题,待学习。
回復

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 立即註冊

本版積分規則

QQ|小黑屋|手機版|Archiver|東里論壇 ( 粤ICP备14015598号 ) 公安备案图标粤公网安备 44512202000019号

GMT+8, 2019-7-23 00:57 , Processed in 0.062500 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回復 返回頂部 返回列表