js學(xué)習(xí)筆記----進(jìn)階Day02瀑布流和scroll家族

商品展示

  • 進(jìn)度條長度的設(shè)置 : 取決于商品的長度
// 進(jìn)度條移動(dòng) 1px 商品移動(dòng)多少像素
// 內(nèi)容走的距離 / 滾動(dòng)條走的距離 =(內(nèi)容的長度 - 盒子的長度) / (盒子長度 - 滾動(dòng)條的長度)
//內(nèi)容走的距離 = (內(nèi)容的長度 - 盒子的長度) / (盒子長度 - 滾動(dòng)條的長度) * 滾動(dòng)條走的距離

oul.style.left = - (oul.offsetWidth - slider.offsetWidth) / (slider.offsetWidth - progress_flag.offsetWidth) * x + 'px';

scroll家族

  • window.onscroll只要當(dāng)滾動(dòng)條滾動(dòng)就會(huì)調(diào)用

  • box.scrollTop 內(nèi)容被卷曲的上面距離

  • box.scrollLeft

  • scroll家族可以獲取值, 也可以設(shè)置值.

  • !!! 而offset家族只能獲取值, 不能設(shè)置值. 應(yīng)該用style.xx設(shè)置值

獲取滾動(dòng)距離(不同瀏覽器適配問題---瀏覽器模式)
  • 瀏覽器適配問題

document.documentElement.scrollTop;

//或者最新的瀏覽器獲取滾動(dòng)距離

window.pageYoffset

  • 獲取滾動(dòng)距離的兼容寫法 (可以將方法抽取到一個(gè)css文件中)
function scroll() {
    if(window.pageYOffset || window.pageXOffset){
        // 是IE9+ 和最新的瀏覽器
        return {
            top:window.pageYOffset,
            left:window.pageXOffset
        };
    }else if(document.compatMode == "CSS1Compat"){
        // CSS1Compat是w3c標(biāo)準(zhǔn)模式 IE7+
        return {
            top:document.documentElement.scrollTop,
            left:document.documentElement.scrollLeft
        }
    }else {
        // 怪異模式 backCompat. IE6及以下
        return {
            top:document.body.scrollTop,
            left:document.body.scrollLeft
        }
    }
}

瀑布流 !!! 重點(diǎn)

  • 特點(diǎn): 等寬不等高

  • 優(yōu)點(diǎn): 直觀 簡潔 節(jié)省空間

  • 以類型的網(wǎng)站不會(huì)在一級(jí)頁面使用. 因?yàn)闀?huì)影響SEO優(yōu)化 (可以放在二級(jí)頁面)

  • description 和 keywords. 這兩個(gè)關(guān)鍵詞的內(nèi)容可以提高SEO效率.

eg. 京東主頁head.png

步驟 :

  1. 父盒子居中 讓main在body中居中
  • margin: 0 auto;//使用前提條件: 1. 塊級(jí)元素 2. 寬高被設(shè)定, 并不超過父元素.

  • 求瀑布流的動(dòng)態(tài)寬度 = parseInt(屏幕寬度 / 盒子寬度) * 盒子寬度;

2. 子盒子定位

  • 除了第一行, 其他都要定位. 將下一個(gè)盒子拼接到最矮的盒子下面

  • 子盒子定位

創(chuàng)建一個(gè)高度數(shù)組
var arrH = [];
for(var i = 0; i<allBox.length; i++){
    // 1.取出盒子
    var box = allBox[i];
    // 獲取每一個(gè)盒子的高度
    var boxH = box.offsetHeight;

    if(i < cols){
        // 第一行
        // 第一行盒子i不需要定位 并且把第一行盒子的高度添加到高度數(shù)組中
        arrH.push(boxH);
    }else {
        // 不是第一行
        // 盒子需要定位
        // 每次拼接到最矮盒子的下面
        // 1.從高度數(shù)組中找出最小值
        var minH = _.min(arrH);
        // 2.獲取最小值的索引
        // indexOf 獲取數(shù)組中當(dāng)前值的索引
        var minIndex = arrH.indexOf(minH);
        //檢索字符串 str.indexOf('a');  str.lastIndexOf('a');

        // 3.設(shè)置當(dāng)前盒子的x值
        box.style.left = minIndex * boxW + 'px';
        box.style.top = minH + 'px';
        //瀏覽器中看到top left有值, 但是并不生效 => 是因?yàn)闆]有定位.
        box.style.position = 'absolute';

        // 4.更新高度數(shù)組
        arrH[minIndex] = minH + boxH;
    }
}

underscore框架并不會(huì)污染變量, 因?yàn)槭褂昧碎]包.

中部吸頂效果 !!! 常用

  • 使用到h5新增標(biāo)簽 : section 區(qū)塊; nav 導(dǎo)航;

  • 在>= 給nav添加類名fixed,

.fix{
    position: fixed;
 left: 0;
 top: 0; }

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末挣磨,一起剝皮案震驚了整個(gè)濱河市雀彼,隨后出現(xiàn)的幾起案子绑改,更是在濱河造成了極大的恐慌啸盏,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,539評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件耻蛇,死亡現(xiàn)場離奇詭異涮瞻,居然都是意外死亡搀暑,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,594評(píng)論 3 396
  • 文/潘曉璐 我一進(jìn)店門光戈,熙熙樓的掌柜王于貴愁眉苦臉地迎上來就轧,“玉大人证杭,你說我怎么就攤上這事《视” “怎么了解愤?”我有些...
    開封第一講書人閱讀 165,871評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長乎莉。 經(jīng)常有香客問我送讲,道長,這世上最難降的妖魔是什么惋啃? 我笑而不...
    開封第一講書人閱讀 58,963評(píng)論 1 295
  • 正文 為了忘掉前任哼鬓,我火速辦了婚禮,結(jié)果婚禮上边灭,老公的妹妹穿的比我還像新娘异希。我一直安慰自己,他們只是感情好绒瘦,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,984評(píng)論 6 393
  • 文/花漫 我一把揭開白布称簿。 她就那樣靜靜地躺著,像睡著了一般惰帽。 火紅的嫁衣襯著肌膚如雪憨降。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,763評(píng)論 1 307
  • 那天该酗,我揣著相機(jī)與錄音授药,去河邊找鬼。 笑死呜魄,一個(gè)胖子當(dāng)著我的面吹牛悔叽,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播爵嗅,決...
    沈念sama閱讀 40,468評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼娇澎,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了操骡?” 一聲冷哼從身側(cè)響起九火,我...
    開封第一講書人閱讀 39,357評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎册招,沒想到半個(gè)月后岔激,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,850評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡是掰,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,002評(píng)論 3 338
  • 正文 我和宋清朗相戀三年虑鼎,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,144評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡炫彩,死狀恐怖匾七,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情江兢,我是刑警寧澤昨忆,帶...
    沈念sama閱讀 35,823評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站杉允,受9級(jí)特大地震影響邑贴,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜叔磷,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,483評(píng)論 3 331
  • 文/蒙蒙 一拢驾、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧改基,春花似錦繁疤、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,026評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至封恰,卻和暖如春麻养,著一層夾襖步出監(jiān)牢的瞬間褐啡,已是汗流浹背诺舔。 一陣腳步聲響...
    開封第一講書人閱讀 33,150評(píng)論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留备畦,地道東北人低飒。 一個(gè)月前我還...
    沈念sama閱讀 48,415評(píng)論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像懂盐,于是被迫代替她去往敵國和親褥赊。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,092評(píng)論 2 355

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

  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案莉恼? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補(bǔ)...
    _Yfling閱讀 13,754評(píng)論 1 92
  • 轉(zhuǎn)載請(qǐng)聲明 原文鏈接地址 關(guān)注公眾號(hào)獲取更多資訊 第一部分 HTML 第一章 職業(yè)規(guī)劃和前景 職業(yè)方向規(guī)劃定位...
    程序員poetry閱讀 16,558評(píng)論 32 459
  • DOM總結(jié) 1:DOM - document object model 文檔對(duì)象模型 作用:給我們提供了一些方法...
    盒小飯stone閱讀 602評(píng)論 0 0
  • 1.CSS基本概念 1.1 CSS的定義 CSS(Cascading Style Sheets)層疊樣式表拌喉,主要用...
    寥寥十一閱讀 1,836評(píng)論 0 6
  • 落葉繽紛 在清晨 在黃昏 在青青草地 妝扮慌張的街道 溜過匆匆的腳步 黃葉搖動(dòng)枝頭,作響 盤旋空中俐银,飛舞 黃葉騰地...
    書生亦百用閱讀 339評(píng)論 0 1