成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁 > 知識庫 > HTML5實現(xiàn)直播間評論滾動效果的代碼

HTML5實現(xiàn)直播間評論滾動效果的代碼

熱門標(biāo)簽:如何獲取地圖標(biāo)注客戶 拓展地圖標(biāo)注 只辦理400電話 電話機(jī)器人黑斑馬免費(fèi) 電話機(jī)器人電銷系統(tǒng)掙話費(fèi) 平?jīng)龅貓D標(biāo)注位置怎么弄 高德地圖標(biāo)注地點糾錯 機(jī)器人外呼系統(tǒng)存在哪些能力 南昌仁和怎么申請開通400電話

直播間評論滾動效果,下劃查看歷史消息并停止?jié)L動,如有新消息會出現(xiàn)新消息提醒,點擊滾動到底部。

2.具體代碼

<template>
    <div class="comment">
    	<div class="comment-wrap" ref="wrapper">
	    <ul class="list" ref="list">
    	        <li v-for="item in list" :key="item.id">
    		    <span class="name">{{item.name}}:</span>
    		    <span class="content">{{item.content}}</span>
    	        </li>
            </ul>
    	</div>
    	<div class="rest-nums" v-show="restComment" @click="scrollBottom">{{restComment}}條新消息</div>
    </div>
</template>
<script>
import smoothscroll from 'smoothscroll-polyfill';
import { debounce, isScrollBottom } from '../utils/utils';
smoothscroll.polyfill(); // 移動端scrollTo behavior: "smooth"動畫失效的polyfill
export default {
  data() {
    return {
        list: [],
        restComment: 0,
        restNums: 0,
        wrapperDom: null,
        listDom: null,
        wrapperHeight: 0
    };
  },
  mounted() {
     this.initDom();
     // ajax...
     const data = new Array(20).fill('');
     this.queue(data);
     setTimeout(() => {
         const list = new Array(10).fill('');
	 this.queue(list);
      }, 30000);
  },
  methods: {
      initDom() {
          this.wrapperDom = this.$refs.wrapper;
          this.listDom = this.$refs.list;
          this.wrapperHeight = this.wrapperDom.offsetHeight;
      },
      addTimeOut(opt) {
    	   return new Promise((resolve, reject) => {
    		setTimeout(() => {
    			this.addComment(opt);
    			resolve()
    		}, 500);
    	   });
       },
	// 隊列添加消息
	async queue(data) {
    	    for (let i = 0; i < data.length; i++) {
    		const opt = {
    			name: i + "-用戶名",
    			content: i + "-評論內(nèi)容",
    			id: Date.now()
    		}
    		await this.addTimeOut(opt);
    	    }
	},
        addScroll() {
            debounce(this.listScroll, 200);
            this.isBindScrolled = true;
        },
        listScroll() {
            const ele = this.wrapperDom;
            const isBottom = isScrollBottom(ele, ele.clientHeight);
            if (isBottom) {
		this.restNums = 0;
		this.restComment = 0;
            }
        },
	// 添加評論 如果超過150條就將前50條刪除
        addComment(data) {
            if (this.list.length >= 150) {
                this.list.splice(0, 50);
            }
	    this.list.push(data);
	    this.$nextTick(() => {
		this.renderComment();
	    });
	},
	// 渲染評論
        renderComment() {
            const listHight = this.listDom.offsetHeight;
            const diff = listHight - this.wrapperHeight; // 列表高度與容器高度差值
	    const top = this.wrapperDom.scrollTop; // 列表滾動高度
            if (diff - top < 50) { 
                if (diff > 0) {
                    if (this.isBindScrolled) {
                        this.isBindScrolled = false;
                        this.wrapperDom.removeEventListener("scroll", this.addScroll);
                    }
                    this.wrapperDom.scrollTo({
                        top: diff + 10,
                        left: 0,
                        behavior: "smooth"
        	    });
                    this.restNums = 0;
                }
            } else {
                ++this.restNums;
                if (!this.isBindScrolled) {
                    this.isBindScrolled = true;
                    this.wrapperDom.addEventListener("scroll", this.addScroll);
                }
            }
	    this.restComment = this.restNums >= 99 ? "99+" : this.restNums;
    	},
	// 滾動到底部
        scrollBottom() {
	    this.restNums = 0; // 清除剩余消息
	    this.restComment = this.restNums;
            this.wrapperDom.scrollTo({
                top: this.listDom.offsetHeight,
                left: 0,
                behavior: "smooth"
            });
        }
    }
};
</script>
<style scoped>
    *{
    	padding: 0;
    	margin: 0;
    }
    .comment{
    	width: 70%;
    	height: 350px;
    	position: relative;
    	margin: 100px 0 0 20px;
    }
    .comment-wrap{
    	height: 350px;
    	overflow-y: scroll;
    	-webkit-overflow-scrolling:touch;
    }
    .comment-wrap li{
    	text-align: left;
    	line-height: 30px;
    	padding-left: 10px;
    	background: rgba(0, 0, 0, 0.3);
    	margin-top: 5px;
    	border-radius: 15px;
    	color: #fff;
    }
    .rest-nums{
    	position: absolute;
    	height: 24px;
    	line-height: 24px;
    	color: #f00;
    	border-radius: 15px;
    	padding: 0 15px;
    	bottom: 10px;
    	background: #fff;
    	font-size: 14px;
    	left: 10px;
    }
</style>

用的的兩個工具函數(shù)

/**
 * @desc 函數(shù)防抖
 * @param {需要防抖的函數(shù)} func
 * @param {延遲時間} wait
 */
export function debounce(func, wait = 500) {
    // 緩存一個定時器id
    let timer = 0;
    // 這里返回的函數(shù)是每次用戶實際調(diào)用的防抖函數(shù)
    // 如果已經(jīng)設(shè)定過定時器了就清空上一次的定時器
    // 開始一個新的定時器,延遲執(zhí)行用戶傳入的方法
    return function (...args) {
    	if (timer) clearTimeout(timer)
    	timer = setTimeout(() => {
    		func.apply(this, args)
    	}, wait)
    }
}

/**
 * @desc 是否滾到到容器底部
 * @param {滾動容器} ele 
 * @param {容器高度} wrapHeight 
 */
export function isScrollBottom(ele, wrapHeight, threshold = 30) {
    const h1 = ele.scrollHeight - ele.scrollTop;
    const h2 = wrapHeight + threshold;
    const isBottom = h1 <= h2;
    return isBottom;
}

總結(jié)

到此這篇關(guān)于HTML5實現(xiàn)直播間評論滾動效果的代碼的文章就介紹到這了,更多相關(guān)H5直播間評論滾動內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持腳本之家!

標(biāo)簽:西藏 永州 青島 遼源 漯河 棗莊 池州 新疆

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《HTML5實現(xiàn)直播間評論滾動效果的代碼》,本文關(guān)鍵詞  HTML5,實現(xiàn),直播間,評論,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《HTML5實現(xiàn)直播間評論滾動效果的代碼》相關(guān)的同類信息!
  • 本頁收集關(guān)于HTML5實現(xiàn)直播間評論滾動效果的代碼的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    少妇无套高潮一二三区| 亚洲一级网站| 日韩av网站导航| 青青草97国产精品免费观看无弹窗版| 人人干在线观看| 国产一区二区视频免费在线观看| 亚洲小说欧美另类激情| 亚洲日韩中文字幕| 一级片视频网站| 精品欧美一区二区久久久| 日韩一区二区免费高清| 在线成人超碰| 91在线视频| 国产精品极品在线观看| 国产美女明星三级做爰| 精品视频一区二区三区免费| 精品无码黑人又粗又大又长| 国产麻豆视频| 国产在线精品一区二区夜色| 成人激情视频网站| 日韩成人激情视频| 精品国产伦一区二区三区观看说明| 国产wwwwxxxx| 在线视频欧美性高潮| 91视频免费入口| 久久久久亚洲AV成人| 乱亲女秽乱长久久久| 人人爱人人干婷婷丁香亚洲| 麻豆一区产品精品蜜桃的特点| 亚洲天堂一区二区| 亚洲香肠在线观看| 日本xxxx黄色| 精品视频在线播放色网色视频| 欧美欧美天天天天操| 久久精品一区二区三区不卡免费视频| www.射射射| 亚洲女人小视频在线观看| 国产无人区一区二区三区| 日韩少妇内射免费播放| 一本一道久久a久久| 69av视频在线播放| 另类视频欧美| 色视频www在线播放| 欧美精品乱码久久久久久| 中文字幕成人精品久久不卡| 91精品国产91久久久久久久久| 亚洲男人网站| 4438x成人网全国最大| 国产精品亚洲аv天堂网| 天天摸天天碰天天添| mm1313亚洲国产精品无码试看| 91网站免费入口| 熟女少妇a性色生活片毛片| 国产欧美一区二区三区久久| 日本激情免费| 日本亚洲精品| 亚洲天堂免费观看| 天堂视频在线免费观看| 91精品国产成人观看| 四虎成人精品在永久在线观看| 国产一区二区三区乱码| www.久久久久久| 国产毛片精品| 午夜黄色小视频| 一区二区三区四区久久| 国产伦理精品| 免费一级欧美片在线播放| 看一级黄色录像| 亚洲图片有声小说| 亚洲av人无码激艳猛片服务器| 久久婷婷av| 日本a在线天堂| 日韩欧美国产综合在线一区二区三区| 日本一区二区三区视频在线观看| 丰满少妇在线观看资源站| 久久久久久久久电影| 日韩精品亚洲一区| 国产又粗又猛又爽又黄的视频四季| 国产乱人伦真实精品视频| 成人免费观看视频在线观看| 国产欧美小视频| 嫩草一区二区三区| 99久久99久久精品免费观看| 亚洲啪啪综合av一区二区三区| 免费看污黄网站| 99久久精品无免国产免费| 欧美午夜精品久久久久免费视| 欧美自拍偷拍一区| 日本三级韩国三级久久| 亚洲乱码精品一二三四区日韩在线| 亚洲 日本 欧美 中文幕| 91九色蝌蚪| 国产尤物久久久| 欧美另类一区二区| 69av成年福利视频| 91av在线免费观看| 国产精品国产自产拍高清av王其| 这里只有精品在线观看视频| 欧美二区在线看| 欧美巨大另类极品videosbest| 免费的av在线| 网站永久看片免费| 亚洲天堂中文字幕| 三级小视频在线观看| jizzyou欧美16| aaaa一级片| 欧美猛男超大videosgay| 久久婷婷国产麻豆91| 国产在线一二三区| 91国产高清在线| 免费看污黄网站在线观看| 国产在线精品一区免费香蕉| 九九99久久精品在免费线bt| 全亚洲最色的网站在线观看| 国产免费视频在线| 精品亚洲精品| 国产视频播放| 亚洲天堂男人的天堂| 福利一区在线观看| 少妇被躁爽到高潮无码文| 极品白嫩少妇无套内谢| 日韩黄色片在线观看| 超碰aⅴ人人做人人爽欧美| 亚洲国产精品视频在线观看| 2021国产精品视频| 日本天堂在线| 天天干 天天插| 欧美三级乱人伦电影| 牛牛精品一区二区| 97精品久久久久中文字幕| 国产一区高清| 日韩视频一区二区三区在线播放免费观看| 日韩欧美在线视频| 免费看av成人| 欧美区亚洲区| 在线电影国产精品| av先锋下载| 国产精品免费福利| 91精品久久久久久久久久久久| 日韩欧美国产精品一区二区三区| 国产一区二区三区久久久久久久久| 国产大学生校花援交在线播放| 五月激情婷婷网| 一本色道久久综合狠狠躁的番外| 国产精品视频二区三区| 日本视频一区二区在线观看| 日韩精品在线观看免费| 欧美性猛交xxx乱久交| 椎名由奈jux491在线播放| 精品国产一区二区三区| 岛国视频免费在线观看| 日韩成人影视| 99青春婷婷视频| 国内国产精品久久| 欧美福利一区二区三区| 国语自产精品视频在线看抢先版图片| 色狠狠久久av五月综合| 欧美国产日韩视频| 亚洲精品国产综合久久| 青青九九免费视频在线| 欧美四级在线| www.麻豆传媒| 欧美激情a∨在线视频播放| 精品一区二区三区高清免费不卡| 欧美日韩大片一区二区三区| www日本视频| 无码日韩精品一区二区| 另类激情视频| 又色又爽又黄视频| 亚洲乱码国产乱码精品精大量| 亚洲成人7777| 男女私大尺度视频| 亚洲一级片在线观看| av不卡高清| 国产va在线播放| 亚洲成人黄色网址| 国产人妖一区二区三区| 亚洲蜜桃精久久久久久久久久久久| 亚洲综合极品香蕉久久网| 国产高清日韩| 97色在线视频观看| 免费欧美一级视频| 亚洲人成在线观看网站高清| 无遮挡又色又刺激的女人视频| 凹凸日日摸日日碰夜夜爽1| 黑森林国产精品av| 国产精品xxx电影| 日韩精品免费在线视频观看| 天天干夜夜夜操| av成人免费观看| 免费看的黄色欧美网站| 免费午夜一级| 国产999久久久| 久久综合色综合88| 在线观看免费黄网站| 中文在线观看免费网站| 99久久夜色精品国产网站| 国产欧美一区二区三区沐欲| 最新国产精品拍自在线播放| 一区二区视频在线免费观看| 第一次破处视频| 成人免费91在线看| 国产精品毛片久久久久久| 丰满少妇久久久| 好男人官网在线观看| 欧美区一区二区三区| 在线视频欧美性高潮| 91久久精品午夜一区二区| 国产激情一区二区三区| 在线观看污视频| 亚洲激情视频在线播放| 最新在线黄色网址| 亚洲黄色免费av| 国产精一区二区三区| 天天射天天操天天干| 日本韩国精品在线| 成年人影院在线观看| 国产精品一区一区| 中文在线官网天堂| 国产精品九九视频| 黄色网址免费在线观看| 精品久久久久一区| 男人操女人免费网站| 国产一区二区三区亚洲综合| 中文视频在线| 黄色小说综合网站| 无码人妻精品一区二区三区温州| 精品久久久久久久久久国产| 蜜桃传媒视频麻豆一区| 免费91麻豆精品国产自产在线观看| 国产精品久久久久永久免费观看| 男女视频在线观看免费| 久久久99精品| 久操视频免费看| 三级小视频在线观看| 成人性生交大片免费观看网站| 国产精品白丝av| 免费成人看片网址| 国产精品69xx| 5g国产欧美日韩视频| 日韩国产一区二区| 91黄视频在线观看| 国产日韩在线观看av| 亚洲欧美一区二区三区四区| 久久精品久久久久久| 九九视频直播综合网| 三年片免费观看大全| 在线免费观看av网| 中文字幕乱码人妻综合二区三区| 99久久精品免费看国产免费软件| 欧美一区二区三区在线电影| 国产精品777777| va视频在线观看| 亚洲欧美电影一区二区| 国产日韩欧美精品| 国产高潮失禁喷水爽到抽搐| 韩日毛片在线观看| 7777精品伊人久久久大香线蕉完整版| 天天干天天插天天射| 青青久精品观看视频最新| 国产精品欧美三级在线观看| 欧美日韩三级视频| 国产免费一区二区三区网站免费| 免费一级网站| 26uuu国产一区二区三区| 亚洲高清一区二| www.99色.com| 9i精品福利一区二区三区| 日本不卡高清视频| 久久久香蕉视频| 欧美成人另类视频| a级黄色免费视频| 欧美精品在线观看播放| 91成人理论电影| 欧洲一区在线| 久久久久香蕉视频| 色就是色欧美色图| 国产女人18毛片水真多成人如厕| 懂色av一区二区三区免费看| 国产伦一区二区三区色一情| 中文字幕九色91在线| 天天爽夜夜爽夜夜爽精品视频| 青青青视频在线免费观看| 99青春婷婷视频| 91精品国产综合久久香蕉922| 成人在线免费小视频| 日韩毛片在线一区二区毛片| 色老板在线视频| 中文字幕一区二区三区视频| 亚洲成人av影片| 日本伊人久久| 亚洲精品中文字| 成人黄色av网址| 人人妻人人藻人人爽欧美一区| 国产成人在线视频免费观看| 一本一本久久a久久精品综合麻豆| 91.com在线| 18精品爽视频在线观看| 欧美日韩色网| 欧美污视频网站| 中文字字幕一区二区三区四区五区| 欧美精品99久久久| 精品久久久久久久人人人人传媒| 国内精品国产三级国产99| 国产精品水嫩水嫩| 精品国产伦一区二区三区观看说明| 国产网站欧美日韩免费精品在线观看| 久久久综合网站| 69堂国产成人免费视频| 国产精品夜夜夜一区二区三区尤| 制服丨自拍丨欧美丨动漫丨| 亚洲最新视频在线观看| 污软件在线观看| 亚洲午夜视频在线观看| 日韩av不卡一区二区| 一区二区三区视频在线观看免费| 欧美在线视频二区| 亚洲bt天天射| 激情网站在线观看| 国产精品无码一区二区三| 亚洲图片在线| 网站一区二区三区| 久久亚洲精品伦理| 大片免费在线观看| 日韩乱码人妻无码中文字幕久久| 91福利视频在线| 国产小视频在线| 97影院在线观看|