亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

jQuery實現參數自定義的文字跑馬燈效果

2019-11-19 13:14:53
字體:
來源:轉載
供稿:網友

本文為大家分享了jQuery實現文字跑馬燈效果的具體代碼,供大家參考,具體內容如下

一、明確需求

基本需求:最近在工作中接到一個新需求,簡單來說就是實現一行文字從右到左跑馬燈的效果,并且以固定的時間間隔進行循環。

原本這是一個很容易實現的需求,但是難點是要求很多參數得是用戶可自行設置的,包括文字跑馬燈的速度和距離下次出現的間隔。具體需求見下圖:

這樣一來實現這個功能就會有點麻煩了,需要燒燒腦細胞了。

二、具體實現過程

HTML中只需要如下幾行代碼

<div id="swiper"> <div class="swiper_div">  <span class="swiper_span custom_span"></span>  <span class="swiper_span id_span">用戶的UID</span> </div></div>

css樣式如下(注意此處采用less的語法)

#swiper{ position: absolute; width: 100%; background-color: red; z-index: 10000; top:0px; .swiper_div{  color: black;  position: absolute;  left: 100%;  white-space: nowrap;  transition-property: left;  transition-timing-function: linear;  .swiper_span{  font-size: 16px;  color: black;  opacity: 1; // 不透明度,范圍是0-1  } }}

下面是相關的js代碼

首先定義一套默認值,如果用戶未設置的話采用默認值,否則采用用戶設置的值。

const WATER_MARK = { VERTICAL_AXIS: 200, // 垂直坐標,單位px FONT_SIZE: 16, // 文字字體大小,單位px FONT_COLOR: '#ffffff', // 文字顏色 FONT_OPACITY: 1, // 文字不透明度,范圍是 0-1,1為完全不透明 FONT_BACKGROUND: '', // 文字底色 SPEED: 200, // 跑馬燈速度,單位px/s TIME_STAMP: 6, // 文字顯示間隔時間,單位s TEXT_CONTENT: '', // 自定義文字內容 };

接下來就是核心代碼了。

// 通過選擇器獲取跑馬燈相關元素 let $swiper = $('#swiper'); let $swiperDiv = $(".swiper_div"); let $swiperSpan = $(".swiper_span"); let $customSpan = $(".custom_span"); let $idSpan = $(".id_span");function waterMark() { // 不能在此處提前獲取id為swiper的div的寬度,獲取的比實際要大,目前不知道什么原因。 // let swiperWidth = $swiper[0].offsetWidth; let swiperDivWidth = $swiperDiv[0].offsetWidth; let verticalAxis = WATER_MARK.VERTICAL_AXIS; let fontSize = WATER_MARK.FONT_SIZE; let fontColor = WATER_MARK.FONT_COLOR; let fontOpacity = WATER_MARK.FONT_OPACITY; let fontBackground = WATER_MARK.FONT_BACKGROUND; let speed = WATER_MARK.SPEED; let timeStamp = WATER_MARK.TIME_STAMP; let textContent = WATER_MARK.TEXT_CONTENT; $swiper.css('top',verticalAxis+'px'); $swiperSpan.css('font-size',fontSize+'px'); $swiperSpan.css('color',fontColor); $swiperSpan.css('opacity',fontOpacity); $swiperDiv.css('background-color',fontBackground); $customSpan.text(textContent); setTimeout(function () {  let totalScrollWidth = swiperDivWidth+$swiper[0].offsetWidth;  let durationTime = totalScrollWidth/speed; // 3.135s  $swiperDiv.css("transition-duration",durationTime+"s");  $swiperDiv.css("left","-"+swiperDivWidth+"px");  setInterval(function () {  if($swiperDiv.css('left') === '-'+swiperDivWidth+'px'){   $swiperDiv.css("left","100%");   $swiperDiv.css("transition-property",'null');  }else{   $swiperDiv.css("transition-property",'left');   $swiperDiv.css("left","-"+swiperDivWidth+"px");   $swiperDiv.css("transition-delay",timeStamp+'s');  }  },1000); },1000); } waterMark();

當時在想如何控制這個間隔時間時還想了另外一種寫法,以時間為比較基準,如下:

let sumeTime=0; // 計算時間的變量 let durationTime = 5000 ; // 過渡時間,毫秒制,與過度時間保持一致時間 let jiange = 6000 ; // 自定義間隔時間 let jisuan = 1000; //設置計算時間的精度 setTimeout(function () { //開始執行滾動 $swiperDiv.css("left","-"+swiperDivWidth+"px"); setInterval(function () { sumeTime = sumeTime + jisuan; //所加值與 setInterval 設置時間一致 if((sumeTime >= durationTime) && (sumeTime < (jiange + durationTime))){  //剛好滾動完到最右側 $swiperDiv.css("left","100%"); $swiperDiv.css("transition-property",'null'); }else if(sumeTime >=(jiange + durationTime)){ // console.log("間隔時間到啦開始下次執行了啊******"); $swiperDiv.css("transition-property",'left'); $swiperDiv.css("left","-"+swiperDivWidth+"px"); sumeTime = 0; } },jisuan); },1000); 

 兩種方式說不好哪種好哪種壞,只是第一種看起來更明了??傊?,以上代碼就可以實現該需求。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲第一精品福利| 欧美日韩一区二区在线| 国产视频在线一区二区| 在线观看中文字幕亚洲| 欧美电影免费观看大全| 国产97色在线|日韩| 欧美精品情趣视频| 亚洲欧美日韩视频一区| 精品久久久久久久久久| 久久精品美女视频网站| 91成人在线观看国产| 欧美日韩国产影院| 亚洲国产精品福利| 亚洲变态欧美另类捆绑| 91久久精品久久国产性色也91| 最近2019中文字幕一页二页| 69久久夜色精品国产69| 8050国产精品久久久久久| 日本亚洲欧洲色α| 精品无人区太爽高潮在线播放| 亚洲精品一区中文字幕乱码| 国产91ⅴ在线精品免费观看| 亚洲人成欧美中文字幕| 成人免费看吃奶视频网站| 高清欧美一区二区三区| 欧美巨猛xxxx猛交黑人97人| 欧美日韩综合视频网址| 伊人男人综合视频网| 91久久精品视频| 日韩天堂在线视频| 欧美日韩亚洲网| 色妞欧美日韩在线| 欧美日韩激情小视频| 97福利一区二区| 一区二区三区高清国产| 成人午夜在线观看| 国产精品视频久| 亚洲精品国精品久久99热| 欧美高清电影在线看| 国产精品成久久久久三级| 社区色欧美激情 | 欧美丰满少妇xxxxx做受| 欧美大片在线免费观看| 久久精品男人天堂| 久久亚洲私人国产精品va| 欧美国产日韩xxxxx| 最近2019中文字幕第三页视频| 亚洲欧美国产另类| 国产一区二区三区视频在线观看| 91精品国产777在线观看| 午夜精品久久久久久久99热| 国产不卡一区二区在线播放| 成人av在线亚洲| 国产精品高潮呻吟久久av野狼| 色噜噜狠狠狠综合曰曰曰88av| 一区二区欧美日韩视频| 国产精品免费久久久久久| 亚洲第一精品夜夜躁人人爽| 国产丝袜一区二区三区| 精品久久久香蕉免费精品视频| 在线观看欧美视频| 日韩中文字幕在线| 亚洲综合日韩在线| 欧美激情精品久久久久久免费印度| 日韩美女在线观看一区| 欧美激情中文字幕乱码免费| 国产精品电影网| 黄网动漫久久久| 欧美在线观看一区二区三区| 国内精品免费午夜毛片| 国产一区二区三区日韩欧美| 成人美女av在线直播| 亚洲毛片在线观看| 国产欧美久久一区二区| 欧洲美女免费图片一区| 国产精品99久久久久久白浆小说| 久久资源免费视频| 亚洲欧美国产精品专区久久| 欧美久久久精品| 在线亚洲午夜片av大片| 久久久伊人日本| 91黑丝高跟在线| 欧美电影电视剧在线观看| 中文字幕久久久| 亚洲一区二区三区视频播放| 欧美极品少妇全裸体| 人人澡人人澡人人看欧美| 热久久免费国产视频| 国产a∨精品一区二区三区不卡| 成人两性免费视频| 精品一区二区三区三区| 日韩电影视频免费| 国产一区二区香蕉| 国产一区二区三区免费视频| 性色av一区二区三区红粉影视| 欧美午夜精品久久久久久久| 亚洲男人av电影| 成人性生交xxxxx网站| 亚洲加勒比久久88色综合| 97精品欧美一区二区三区| 久久免费视频在线观看| 在线播放亚洲激情| 亚洲春色另类小说| 精品久久久久久中文字幕一区奶水| 91久久久久久久久久久久久| 国产一区二区三区毛片| 欧美色道久久88综合亚洲精品| www.日韩av.com| 欧美精品videossex性护士| 亚洲精品自产拍| 欧美激情啊啊啊| 国产一区二区三区在线免费观看| 国产+人+亚洲| 91高清在线免费观看| 欧美成人午夜影院| 九九久久久久久久久激情| 亚洲人成欧美中文字幕| 欧美富婆性猛交| 欧美激情第一页xxx| 亚洲一二在线观看| xxxxx成人.com| 久久久久久97| 国产精品久久久久久久久久三级| www日韩中文字幕在线看| 国产999视频| 日韩免费中文字幕| 久久综合久中文字幕青草| 国精产品一区一区三区有限在线| 亚洲精品电影在线| 久久亚洲精品一区二区| 久久久免费在线观看| 国产色综合天天综合网| 国产精品视频白浆免费视频| 亚洲精品www久久久久久广东| 国产日韩欧美夫妻视频在线观看| 欧美性xxxx在线播放| 精品国产老师黑色丝袜高跟鞋| 亚洲aⅴ男人的天堂在线观看| 九色精品免费永久在线| 欧美一级高清免费播放| 久久久电影免费观看完整版| 午夜精品一区二区三区在线视| 欧美日韩免费区域视频在线观看| 丁香五六月婷婷久久激情| 日韩电影免费在线观看| 2018中文字幕一区二区三区| 中文字幕自拍vr一区二区三区| 国产欧美中文字幕| 国产精品高清网站| 国产成人综合精品在线| 国产精品网红福利| 欧美性色xo影院| 精品国产精品三级精品av网址| 日韩大陆欧美高清视频区| 亚洲欧美中文字幕在线一区| 国产精品视频大全| 久久久999精品免费| 在线观看亚洲视频| 91国产一区在线| 精品久久久久久久大神国产| 成人免费激情视频| 成人观看高清在线观看免费| 亚洲福利在线视频| 7777精品久久久久久|