//滑动监控 var xRoll = function(el,fn){ xRoll.prototype.init(el,fn) }; xRoll.prototype={ init:function(_el,fn){ _el.attr("data-state",false);//给匹配的元素自定义属性 this.start(_el,fn);//给匹配的元素绑定事件 $(window).on("scroll",function(){//监听滚动条,并执行start函数 xRoll.prototype.start(_el,fn) }) }, start:function(_el,fn){ $(_el).each(function(){ var _self=$(this); var xRollTop=$(window).scrollTop();//获取滚动条位置 = 0 var isWindowHeiget=$(window).height();//获取整个浏览器窗口的高度 if(_self.data().state){return}//只允许加载一次 if(xRollTop+isWindowHeiget>$(this).offset().top+10){ fn(_self); _self.attr("data-state",true); _self.data().state=true } }) } };