監(jiān)控頁(yè)面的滾動(dòng)事件(上滾/下滾)

注:以下方法是根據(jù)框架設(shè)計(jì)的,但也可以理解借鑒

公共接口

$(function() { ? ?// js部分開(kāi)始

? ? var scrolling =false; ? ??//判斷到底了

? ? functionisBottom() {

? ? ? ? var scrollTop =0;

? ? ? ? if ( document.documentElement ?&& document.documentElement.scrollTop ) {

? ? ? ? ?scrollTop = document.documentElement.scrollTop;

? ? }else if ( document.body ) {

? ? ? ? scrollTop =document.body.scrollTop;//滾動(dòng)條高度

? ? }

? ? ?var clientHeight =document.documentElement.clientHeight; ?//瀏覽器高度

? ? var scrollHeight = Math.max( document.body.scrollHeight , document.documentElement.scrollHeight ); ?//內(nèi)容區(qū)域的高度

? ? return Math.abs(scrollTop + clientHeight - scrollHeight) <=50; ? //高度差在50內(nèi)可以判斷到底了

}

? ? //判斷到頂部了

? ? functionisTop(){

? ? ? ? var scrollTop =0;

? ? ? ? if ( document.documentElement && document.documentElement.scrollTop) {

? ? ? ? ? ? scrollTop =document.documentElement.scrollTop;

? ? ? ? }? else if ( document.body) {

? ? ? ? ? ? ? scrollTop =document.body.scrollTop;

? ? ? ? ?}

? ? ? ? ?return scrollTop==0;

? }

?functiononFinish() {

? ? ?scrolling =false;

? ?}

functiononScroll() { ??//定義當(dāng)前滾動(dòng)的區(qū)域

? ? var scrollTop =me._param.config.scroller

? ? ? ? ?jQuery(me._param.config.scroller).scrollTop() ? ?//自己設(shè)置的滾動(dòng)區(qū)域

? ? ? ? : jQuery(document).scrollTop(); ? ?//瀏覽器的滾動(dòng)區(qū)域

? ? if(scrollTop >0&& !scrolling &&isBottom()) {

? ? ? ? scrolling =true;

? ? try{

? ? ? ? //找到當(dāng)前頁(yè)面的onScroll方法

? ? ? ? var scrollEvent =me.control().onScroll;? ? //當(dāng)前頁(yè)面的onScroll方法余黎,me.control() 是當(dāng)前頁(yè)面

? ? ? ? if( scrollEvent ) scrollEvent(onFinish,true); ? ?//這里的true和下面的false分別是用來(lái)表示滾到底部(true)還是頂部(false)了

? ? ? ? else onFinish();

? ? ? ?}catch(e) {

? ? ? ? ? ? onFinish();

? ? ? ? ?}

? }

? ? if(scrollTop ==0&& !scrolling &&isTop()) {

? ? scrolling =true;

? ? try{

? ? ? ? ?//找到當(dāng)前頁(yè)面的onScroll方法

? ? ? ? ?var scrollEvent = me.control().onScroll;

? ? ? ? ?if( scrollEvent ) ?scrollEvent(onFinish,false);

? ? ? ? else onFinish();

? ? ?}catch(e) {

? ? ? ? ?onFinish();

? ? ? ? }

? ?}

}

window.addEventListener("scroll",onScroll,false);

});

某頁(yè)面的js部分

onScroll:function(finished,isBottom) { ? //這里初次調(diào)用可以直接賦值參數(shù),比如 onScroll ( null , true) 設(shè)置首次下滾

? ? ?//如果上滾則不能進(jìn)行下面的一系列操作

? ? ?if(!isBottom){ ?//這里對(duì)上滾刷新做了限制

? ? ? ? ?finished && finished();

? ? ? ? return;

? ? }

? ? if( that.$scope.count!=null&& that.$scope.userMsgList.length>= that.$scope.count) { ? //判斷

? ? ? ? ?finished && finished();

? ? ? ? return;

? ? }

? ?Util.ajax({ ? ?//ajax請(qǐng)求

? ? ? ?method:"POST",

? ? ? data:{?},

? ? ? url:Util.getApiUrl("")

? ? ? },function(data) {

? ? ? // 數(shù)據(jù)返回后的操作

? ? ?finished && finished();

},true);

}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末塘雳,一起剝皮案震驚了整個(gè)濱河市骤星,隨后出現(xiàn)的幾起案子吃沪,更是在濱河造成了極大的恐慌罩息,老刑警劉巖嗤详,帶你破解...
    沈念sama閱讀 218,546評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異瓷炮,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)递宅,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,224評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén)娘香,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人办龄,你說(shuō)我怎么就攤上這事烘绽。” “怎么了俐填?”我有些...
    開(kāi)封第一講書(shū)人閱讀 164,911評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵安接,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我英融,道長(zhǎng)盏檐,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,737評(píng)論 1 294
  • 正文 為了忘掉前任驶悟,我火速辦了婚禮胡野,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘痕鳍。我一直安慰自己硫豆,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,753評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布笼呆。 她就那樣靜靜地躺著熊响,像睡著了一般。 火紅的嫁衣襯著肌膚如雪诗赌。 梳的紋絲不亂的頭發(fā)上汗茄,一...
    開(kāi)封第一講書(shū)人閱讀 51,598評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音境肾,去河邊找鬼剔难。 笑死胆屿,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的偶宫。 我是一名探鬼主播非迹,決...
    沈念sama閱讀 40,338評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼纯趋!你這毒婦竟也來(lái)了憎兽?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,249評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤吵冒,失蹤者是張志新(化名)和其女友劉穎纯命,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體痹栖,經(jīng)...
    沈念sama閱讀 45,696評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡亿汞,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,888評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了揪阿。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片疗我。...
    茶點(diǎn)故事閱讀 40,013評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖南捂,靈堂內(nèi)的尸體忽然破棺而出吴裤,到底是詐尸還是另有隱情,我是刑警寧澤溺健,帶...
    沈念sama閱讀 35,731評(píng)論 5 346
  • 正文 年R本政府宣布麦牺,位于F島的核電站,受9級(jí)特大地震影響鞭缭,放射性物質(zhì)發(fā)生泄漏剖膳。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,348評(píng)論 3 330
  • 文/蒙蒙 一缚去、第九天 我趴在偏房一處隱蔽的房頂上張望潮秘。 院中可真熱鬧,春花似錦易结、人聲如沸枕荞。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,929評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)躏精。三九已至,卻和暖如春鹦肿,著一層夾襖步出監(jiān)牢的瞬間矗烛,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,048評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留瞭吃,地道東北人碌嘀。 一個(gè)月前我還...
    沈念sama閱讀 48,203評(píng)論 3 370
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像歪架,于是被迫代替她去往敵國(guó)和親股冗。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,960評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • 以下是常用的代碼收集和蚪,學(xué)習(xí)用止状。轉(zhuǎn)自豪情博客園 1. PC - js 返回指定范圍的隨機(jī)數(shù)(m-n之間)的公式 re...
    自由加咖啡閱讀 998評(píng)論 0 1
  • Window和document對(duì)象的區(qū)別 window對(duì)象window對(duì)象表示瀏覽器中打開(kāi)的窗口window對(duì)象是...
    FConfidence閱讀 2,207評(píng)論 0 5
  • 這是2012年開(kāi)發(fā)的網(wǎng)站 , 為自己做個(gè)筆記攒霹。里面當(dāng)時(shí)封裝了好多方法 http://www.cphi.cn/fil...
    github加星點(diǎn)進(jìn)來(lái)閱讀 430評(píng)論 0 1
  • 1.第一種方式:錨鏈接 優(yōu)點(diǎn):簡(jiǎn)單快速怯疤,沒(méi)有兼容性問(wèn)題 缺點(diǎn): 視覺(jué)上不夠直觀,用戶體驗(yàn)不太好 2.js的方式: ...
    love2013閱讀 791評(píng)論 0 0
  • offset家族三大家族和一個(gè)事件對(duì)象三大家族(offset/scroll/client)事件對(duì)象/event ...
    Yuann閱讀 963評(píng)論 0 5