在有滾動條的情況下蓬衡,判斷頁面是否滾動到了底部
$(window).scrollTop(): 獲取窗口滾動條的距離
$(window).height():獲取窗口可視部分的高度
$(document).height():獲取整個(gè)頁面的高度= 滾動條的高度+可視窗口高度
function isScrollBottom(){
if ($(window).scrollTop() + $(window).height() >= $(document).height()) {
return true;
}
return false;
}
$(window).scroll(function(){
if (isScrollBottom()) {
barrel.perLoadImgNum = 20;
barrel.loadImg();
}
});
如何判斷一個(gè)點(diǎn)擊事件不是落在指定元素上
可以利用事件的冒泡機(jī)制來處理
分為兩步:
- 阻止指定元素上click事件的冒泡機(jī)制髓帽,那么點(diǎn)擊在該元素時(shí),它的祖先元素不會獲得click事件
- 在該元素的祖先元素上綁定click事件弓乙,當(dāng)它獲得click事件時(shí),說明點(diǎn)擊事件發(fā)生了,并且該事件不是在指定元素上,因?yàn)槲覀冏柚沽酥付ㄔ厣系腸lick事件
以下代碼是:判斷click事件是否作用在this.$ct對象上
// document是this.$ct的祖先元素
$(document).on('click', function(e){
// 進(jìn)入這里颂郎,說明點(diǎn)擊事件不是發(fā)生在this.$ct對象
if (_this.$calendar.css("display") !== 'none') {
_this.$calendar.fadeOut(100);
}
});
// 為this.$ct對象綁定click事件
this.$ct.on('click', function(e){
var $target = $(e.target);
// 阻止事件冒泡
e.stopPropagation();
}