最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

基于jQuery實(shí)現(xiàn)列表循環(huán)滾動(dòng)小技巧(超簡(jiǎn)單)

 更新時(shí)間:2021年08月31日 16:50:18   作者:安之ccy  
只要能夠不停地把第一個(gè)item移動(dòng)到末尾,其余的自會(huì)往上填補(bǔ)空缺,填補(bǔ)的過程用動(dòng)畫放慢些,就能有不斷滾動(dòng)的視覺效果了,這種效果基于jquery怎么實(shí)現(xiàn)呢?下面小編給大家?guī)砹薺Query列表循環(huán)滾動(dòng)效果的實(shí)現(xiàn)思路代碼,一起看看吧

看到一個(gè)很好的思路,記錄一下

之前使用jQuery做滾動(dòng)效果,在這兩篇文章里有寫:文一、文二,分別使用了scrollLeft()與scrollTop()、scroll()來實(shí)現(xiàn)

后來看到一個(gè)demo,覺得思路很妙,想著可以用來做列表內(nèi)容項(xiàng)的滾動(dòng),效果大概是這樣的:
在這里插入圖片描述

思路是這樣的:
只要能夠不停地把第一個(gè)item移動(dòng)到末尾,其余的自會(huì)往上填補(bǔ)空缺,填補(bǔ)的過程用動(dòng)畫放慢些,就能有不斷滾動(dòng)的視覺效果了(數(shù)組刪了第一個(gè)元素,再在末尾加上這個(gè)元素,等于把第一個(gè)元素移動(dòng)到末尾;元素總量沒有改變,但位置全發(fā)生了改變)

代碼:

// 要填充的數(shù)據(jù)
 var data = {
     infoItem : [
         "<strong>第1行:</strong>安之安之安之安之安之安之安之安之安之安之安",
         "<strong>第2行:</strong>陽光彩虹小白馬陽光彩虹小白馬陽光彩虹小白馬",
         "<strong>第3行:</strong>天地之悠悠天地之悠悠天地之悠悠天地之悠悠天"
     ]
 }
 // 將數(shù)據(jù)動(dòng)態(tài)填充到頁面種
 var infoList = []
 for (let i = 0; i < data.infoItem.length; i++){
     let infoStr = `<div class="item">${data.infoItem[i]}</div>`
     infoList.push(infoStr);
 }
 $(".info-wrapper").html(infoList.join(""))

 // 設(shè)置計(jì)時(shí)器,每隔2秒執(zhí)行一次(變換一次)
 var timer = null;
 timer = setInterval(function () {
     // 將第一行item移到最后一行,其他的往上挪填補(bǔ)空缺位
     var infoItemTmp = infoList.shift();
     $(".info-wrapper").append(infoItemTmp );
     $(".item:first").remove();
     infoList.push(infoItemTmp)

 }, 2000)

html和樣式部分:

<div class="container">
        <div class="wrapper">
            <div class="info">
                <div class="info-wrapper"></div>
            </div>
        </div>
    </div>
.constainer {
    width: 900px;
    height: 400px;
    border: 2px solid #eee;
    display: flex;
    justify-content: center;
    align-items: center;
}

.wrapper {
    width: 500px;
    height: 300px;
    border: 1px solid #ccc;
    display: flex;
    justify-content: center;
    align-content: center;
}

.info {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-content: center;
}

.info-wrapper {
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.item {
    border: 2px solid #ccc;
    border-left: 4px solid orange;
    height: 80px;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
    border-radius: 8px;
    margin-top: 20px;
}

目前效果是這樣的:

在這里插入圖片描述

再加上滑動(dòng)效果的動(dòng)畫:

.item:first-child {
    animation: move 2s linear;
}
@keyframes move {
    100% {
        margin-top: -80px;
    }
}

不斷滑動(dòng),到達(dá)可以加入新item的位置時(shí),觸發(fā)新item的加入:

// 設(shè)置計(jì)時(shí)器,每隔2秒執(zhí)行一次(變換一次)--與animation動(dòng)畫時(shí)設(shè)置時(shí)間一致
var timer = null;
timer = setInterval(function () {
    if ($('.info').scrollTop() + $('.info').height() >= $('.info-wrapper').height()) {
        // 將第一行item移到最后一行,其他的往上挪填補(bǔ)空缺位
        var infoItemTmp = infoList.shift();
        $(".info-wrapper").append(infoItemTmp);
        $(".item:first").remove();
        infoList.push(infoItemTmp)
    }
}, 2000)

就可以得到開頭的效果了

到此這篇關(guān)于基于jQuery實(shí)現(xiàn)列表循環(huán)滾動(dòng)小技巧(超簡(jiǎn)單)的文章就介紹到這了,更多相關(guān)jQuery列表循環(huán)滾動(dòng)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 使用jquery模擬a標(biāo)簽的click事件無法實(shí)現(xiàn)跳轉(zhuǎn)的解決

    使用jquery模擬a標(biāo)簽的click事件無法實(shí)現(xiàn)跳轉(zhuǎn)的解決

    這篇文章主要給大家介紹了關(guān)于使用jquery模擬a標(biāo)簽的click事件無法實(shí)現(xiàn)跳轉(zhuǎn)的解決方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-12-12
  • jQuery控制div實(shí)現(xiàn)隨滾動(dòng)條滾動(dòng)效果

    jQuery控制div實(shí)現(xiàn)隨滾動(dòng)條滾動(dòng)效果

    這篇文章主要介紹了jQuery控制div實(shí)現(xiàn)隨滾動(dòng)條滾動(dòng)效果,對(duì)比分析了兩種實(shí)現(xiàn)方法供大家參考選擇,需要的朋友可以參考下
    2016-06-06
  • jQuery控制input只能輸入數(shù)字和兩位小數(shù)的方法

    jQuery控制input只能輸入數(shù)字和兩位小數(shù)的方法

    這篇文章主要介紹了jQuery控制input只能輸入數(shù)字和兩位小數(shù)的相關(guān)知識(shí),本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-05-05
  • jQuery插件scroll實(shí)現(xiàn)無縫滾動(dòng)效果

    jQuery插件scroll實(shí)現(xiàn)無縫滾動(dòng)效果

    今天給大家分享一款頁面無縫滾動(dòng)的jquery.scroll插件。 支持上下左右,淡入淡出,滾動(dòng)時(shí)間設(shè)置,動(dòng)畫時(shí)間設(shè)置,鼠標(biāo)經(jīng)過是否停止設(shè)置,滾動(dòng)鼠標(biāo)液動(dòng)條看下頁面的切換效果。該插件適用瀏覽器:IE8、360、FireFox、Chrome、Safari、Opera、傲游、搜狗、世界之窗。
    2015-04-04
  • jquery實(shí)現(xiàn)仿JqueryUi可拖動(dòng)的DIV實(shí)例

    jquery實(shí)現(xiàn)仿JqueryUi可拖動(dòng)的DIV實(shí)例

    這篇文章主要介紹了jquery實(shí)現(xiàn)仿JqueryUi可拖動(dòng)的DIV,實(shí)例分析了jquery模擬jqueryUI實(shí)現(xiàn)div拖動(dòng)的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-07-07
  • JQuery中DOM事件綁定用法詳解

    JQuery中DOM事件綁定用法詳解

    這篇文章主要介紹了JQuery中DOM事件綁定用法,實(shí)例分析了bind方法綁定事件的相關(guān)技巧,需要的朋友可以參考下
    2015-06-06
  • jquery dataview數(shù)據(jù)視圖插件使用方法

    jquery dataview數(shù)據(jù)視圖插件使用方法

    這篇文章主要介紹了jquery dataview數(shù)據(jù)視圖插件使用方法,數(shù)據(jù)填充與視圖更新利器,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • jquery實(shí)現(xiàn)圖片切換代碼

    jquery實(shí)現(xiàn)圖片切換代碼

    這篇文章主要為大家詳細(xì)介紹了jquery實(shí)現(xiàn)圖片切換代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • 非常強(qiáng)大的 jQuery.AsyncBox 彈出對(duì)話框插件

    非常強(qiáng)大的 jQuery.AsyncBox 彈出對(duì)話框插件

    今天無意中發(fā)現(xiàn)了這個(gè)插件,和大家分享一下,功能和樣式都很強(qiáng)大,調(diào)用也很方便,而且支持鎖定屏幕的效果,插件的效果圖如下,更多效果和皮膚請(qǐng)到官網(wǎng)下載!
    2011-08-08
  • 淺談ajax在jquery中的請(qǐng)求和servlet中的響應(yīng)

    淺談ajax在jquery中的請(qǐng)求和servlet中的響應(yīng)

    下面小編就為大家分享一篇淺談ajax在jquery中的請(qǐng)求和servlet中的響應(yīng),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-01-01

最新評(píng)論

柳河县| 延寿县| 米易县| 福安市| 刚察县| 深泽县| 黎川县| 普安县| 剑川县| 乃东县| 吴堡县| 呼图壁县| 云安县| 威宁| 吴桥县| 任丘市| 沙田区| 六枝特区| 思茅市| 泰和县| 云霄县| 西盟| 布拖县| 汝城县| 诸暨市| 广河县| 宝清县| 楚雄市| 泰兴市| 九龙坡区| 孙吴县| 甘德县| 多伦县| 察隅县| 临朐县| 论坛| 仪征市| 双桥区| 磐石市| 南京市| 桃江县|