js scroll 滚动连续多次触发事件怎么只执行一次

zhiyong230 2012-09-13 10:21:44
问题:我给一个下拉滚动条绑定滚动事件,判断滚动到最底部的时候调用方法,可是滚动到最底部时,老是触发多次事件。
解决:怎么判断多次事件时只执行一次!!!!
...全文
12513 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
flysun03 2012-09-13
  • 打赏
  • 举报
回复
event.stopPropagation(); //取消事件冒泡
flysun03 2012-09-13
  • 打赏
  • 举报
回复 3
event.stopPropagation(); 取消事件冒泡,或者在事件方法最后,return ‘’,
小伙写代码 2012-09-13
  • 打赏
  • 举报
回复
其实你可以调试下,把动态加载那部分先去掉,加个弹框,看看是否滚到底部会无限弹框。
我觉得应该是你动态加载那部分出问题了,你的JS应该没识别到动态加载后的底部高度。
挨踢直男 2012-09-13
  • 打赏
  • 举报
回复
要触发也没办法
设个bool变量, 判断一下
zhiyong230 2012-09-13
  • 打赏
  • 举报
回复
问题: 我滚动到最底部一次后我就会异步取数据加载到这个DIV中,然后又滚动到底部加载数据。就跟微信一样到底部就去加载数据。
我这里就是滚到底部的时候触发了多次事件然后去后台拿了很多数据,想滚一次底部就拿一次数据
小伙写代码 2012-09-13
  • 打赏
  • 举报
回复
写个全局变量控制
打字员 2012-09-13
  • 打赏
  • 举报
回复

(function() {
var finished = true;
function loadData() {
//xxxx
finished = true;
}
dom.onscroll = function() {
if(finished && this.scrollHeight - this.clientHeight == this.scrollTop) {
finished = false;
loadData();
}
}
})();

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧