頁面滾動到某個Div的位置時該Div fixed

寫在前面

頁面交互中經(jīng)常會有這樣的需求:隨著滾動條的滾動轿偎,當(dāng)某個包含重要信息的元素不在當(dāng)前視野范圍內(nèi)時,我們需要fixed到頁面上方或者底部,有一種簡單的實現(xiàn)方法闷叉,不用關(guān)注文檔高度庇勃,不用計算滾動條的卷曲的高度檬嘀,使用getBoundingClientRect()提供的信息來實現(xiàn)。

element.getBoundingClientRect方法
  1. 先看返回值
    document.getElementsByClassName('priceFixedOuter')[0].getBoundingClientRect();
    返回值如下:
  2. 簡單說明

返回值中除了width和height之外其他的屬性值都是相對于視窗左上角來說的责嚷。與滾動條的位置有關(guān)系鸳兽。當(dāng)滾動條的位置發(fā)生變化時,這些值會跟著發(fā)生變化罕拂。

fixed效果方法實現(xiàn)舉例
// 該例子是當(dāng)滾動條滾動到能看到定制總價容器時揍异,隱藏定制總價fixed容器全陨。
// ??定制總價容器和定制總價fixed容器為兩個容器。
var $fixedPriceWrap = $('.priceFixedOuter'); // 定制總價fixed容器
var $priceWrap = $('.submitWrap'); // 定制總價容器
var priceWrap = $priceWrap[0];
var winHeight = $(window).height(); // 可視窗口的高度

// 滾動條滾動到底部能看到定制總價時衷掷,隱藏總價fixed.
$(window).on('scroll', function () {
    var priceWrapTop = priceWrap.getBoundingClientRect().top; // 定制總價容器頂部距離窗口的高度
    if (priceWrapTop - winHeight < 0) {
        $fixedPriceWrap.hide();
    } else {
        $fixedPriceWrap.show();
    }
});

寫在最后

幾個高度
  1. 文檔高度
    Math.max(document.documentElement.clientHeight, document.body.clientHeight);
  2. 滾動條卷去的高度
    Math.max(document.documentElement.scrollTop, document.body.scrollTop);
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末辱姨,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子戚嗅,更是在濱河造成了極大的恐慌雨涛,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,183評論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件懦胞,死亡現(xiàn)場離奇詭異替久,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)躏尉,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,850評論 3 399
  • 文/潘曉璐 我一進(jìn)店門蚯根,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人胀糜,你說我怎么就攤上這事颅拦。” “怎么了僚纷?”我有些...
    開封第一講書人閱讀 168,766評論 0 361
  • 文/不壞的土叔 我叫張陵矩距,是天一觀的道長。 經(jīng)常有香客問我怖竭,道長锥债,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,854評論 1 299
  • 正文 為了忘掉前任痊臭,我火速辦了婚禮哮肚,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘广匙。我一直安慰自己允趟,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 68,871評論 6 398
  • 文/花漫 我一把揭開白布鸦致。 她就那樣靜靜地躺著潮剪,像睡著了一般。 火紅的嫁衣襯著肌膚如雪分唾。 梳的紋絲不亂的頭發(fā)上抗碰,一...
    開封第一講書人閱讀 52,457評論 1 311
  • 那天,我揣著相機(jī)與錄音绽乔,去河邊找鬼弧蝇。 笑死,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的看疗。 我是一名探鬼主播沙峻,決...
    沈念sama閱讀 40,999評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼两芳!你這毒婦竟也來了摔寨?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,914評論 0 277
  • 序言:老撾萬榮一對情侶失蹤怖辆,失蹤者是張志新(化名)和其女友劉穎祷肯,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體疗隶,經(jīng)...
    沈念sama閱讀 46,465評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,543評論 3 342
  • 正文 我和宋清朗相戀三年翼闹,在試婚紗的時候發(fā)現(xiàn)自己被綠了斑鼻。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,675評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡猎荠,死狀恐怖坚弱,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情关摇,我是刑警寧澤荒叶,帶...
    沈念sama閱讀 36,354評論 5 351
  • 正文 年R本政府宣布,位于F島的核電站输虱,受9級特大地震影響些楣,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜宪睹,卻給世界環(huán)境...
    茶點故事閱讀 42,029評論 3 335
  • 文/蒙蒙 一愁茁、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧亭病,春花似錦鹅很、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,514評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至整袁,卻和暖如春菠齿,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背葬项。 一陣腳步聲響...
    開封第一講書人閱讀 33,616評論 1 274
  • 我被黑心中介騙來泰國打工泞当, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 49,091評論 3 378
  • 正文 我出身青樓襟士,卻偏偏與公主長得像盗飒,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子陋桂,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,685評論 2 360

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

  • 制作網(wǎng)頁的過程中逆趣,你有時候需要知道某個元素在網(wǎng)頁上的確切位置。 下面的教程總結(jié)了Javascript在網(wǎng)頁定位方面...
    麥田里的野望閱讀 1,664評論 0 1
  • 一嗜历、JS前言 (1)認(rèn)識JS 也許你已經(jīng)了解HTML標(biāo)記(也稱為結(jié)構(gòu))宣渗,知道了CSS樣式(也稱為表示),會使用HT...
    凜0_0閱讀 2,777評論 0 8
  • Window和document對象的區(qū)別 window對象window對象表示瀏覽器中打開的窗口window對象是...
    FConfidence閱讀 2,211評論 0 5
  • web下的高度、位置 屏幕暴匠、瀏覽器鞍恢、頁面的高度寬度 NARUTOne 相信各位web開發(fā)獅們,在項目中為了搭建漂亮...
    迷緣火葉閱讀 3,701評論 0 1
  • Element對象對應(yīng)網(wǎng)頁的HTML標(biāo)簽元素每窖。每一個HTML標(biāo)簽元素帮掉,在DOM樹上都會轉(zhuǎn)化成一個Element節(jié)點...
    許先生__閱讀 1,813評論 0 2