33 lines
1.1 KiB
JavaScript
33 lines
1.1 KiB
JavaScript
(function(){
|
||
X.pageLogic['visibleChange'] = {
|
||
init : function(parms){
|
||
var observer = new IntersectionObserver(function(changes){
|
||
changes.forEach(function(item,index){
|
||
var callback = $(item.target).data('_visibleChangeCall');
|
||
if(item.intersectionRatio > 0){
|
||
//target:被观察的目标元素,是一个 DOM 节点对象
|
||
callback && callback.call( item.target,1);
|
||
}else{
|
||
callback && callback.call( item.target,0);
|
||
}
|
||
});
|
||
});
|
||
|
||
$.fn.visibleChange = function(callback) {
|
||
this.each(function(){
|
||
$(this).data('_visibleChangeCall',callback);
|
||
observer.observe( this );
|
||
});
|
||
return this;
|
||
};
|
||
|
||
$('.layui-col').visibleChange(function(isShow){
|
||
if(isShow==1){
|
||
//被看见了
|
||
}else{
|
||
//看不见了
|
||
}
|
||
});
|
||
}
|
||
};
|
||
})(); |