日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

js扩展滚动窗口小插件实现文字左右上下滚动效果实例

發(fā)布時(shí)間:2025/3/15 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 js扩展滚动窗口小插件实现文字左右上下滚动效果实例 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

方法一:使用小插件實(shí)現(xiàn),兼容很好
插件代碼如下:

(function($) { $.fn.jMarquee = function(o) {o = $.extend({ speed:50, step:1,//速度 direction:"up",//方向 visible:1//數(shù)量 }, o || {});//配置參數(shù)var i=0;var div=$(this);var ul=$("ul",div);var tli=$("li",ul);var liSize=tli.size();if(o.direction=="left")tli.css("float","left");var liWidth=tli.innerWidth();var liHeight=tli.height();var ulHeight=liHeight*liSize;var ulWidth=liWidth*liSize;//寫(xiě)入if(liSize>o.visible){ul.append(tli.slice(0,o.visible).clone()) //重寫(xiě)htmlli=$("li",ul);liSize=li.size();//寫(xiě)css樣式div.css({"position":"relative",overflow:"hidden"});ul.css({"position":"relative",margin:"0",padding:"0","list-style":"none"});li.css({margin:"0",padding:"0","position":"relative"});switch(o.direction){ case "left": div.css("width",(liWidth*o.visible)+"px"); ul.css("width",(liWidth*liSize)+"px"); li.css("float","left"); break; case "up": div.css({"height":(liHeight*o.visible)+"px"}); ul.css("height",(liHeight*liSize)+"px"); break; }var MyMar=setInterval(ylMarquee,o.speed);ul.hover( function(){clearInterval(MyMar);}, function(){MyMar=setInterval(ylMarquee,o.speed);} ); }; function ylMarquee(){ if(o.direction=="left"){ if(div.scrollLeft()>=ulWidth){ div.scrollLeft(0); } else { var leftNum=div.scrollLeft(); leftNum+=parseInt(o.step); div.scrollLeft(leftNum) } } if(o.direction=="up"){ if(div.scrollTop()>=ulHeight){ div.scrollTop(0); } else{ var topNum=div.scrollTop(); topNum+=parseInt(o.step); div.scrollTop(topNum); } } }; }; })(jQuery);//調(diào)用 $(document).ready(function(){ //.stroll1是div里面帶一個(gè)ul就行了,里面的數(shù)據(jù)使用php調(diào)取 $(".stroll1").jMarquee({visible:4,step:1,direction:"up"}); $(".stroll2").jMarquee({visible:4,step:1,direction:"up"}); $(".stroll3").jMarquee({visible:4,step:1,direction:"up"}); })

方法二:css3加js實(shí)現(xiàn),轉(zhuǎn)載自靖鳴君博客
js代碼:

/** * @author 靖鳴君 * @email jingmingjun92@163.com * @description 滾動(dòng) * @class Marquee * @param {Object} */ var Marquee = function(){this.direction = "top";this.speed = 30; };Marquee.prototype = {//initialinit: function(obj, setttings){this.obj = obj;this._createBox();this.scroll();if(settings){settings.direction && (this.direction = settings.direction);settings.speed && (this.speed = settings.speed);}},_createBox: function(){//create inner box Athis.iBox = document.createElement("div");var iBox = this.iBox;with(iBox.style){width = "100%";height = "100%";overflow = "hidden";}iBox.setAttribute("id", "marqueeBoxA");iBox.innerHTML = obj.innerHTML;//clone inner box Bvar iBox2 = iBox.cloneNode(true);iBox2.setAttribute("id", "marqueeBoxB");//append to obj Boxthis.obj.innerHTML = "";this.obj.appendChild(iBox);this.obj.appendChild(iBox2);},//animationscroll: function() {var _self = this;this.timer = setInterval(function(){_self._ani();}, this.speed);},//setInterval function_ani: function() {if(obj.clientHeight - obj.scrollTop <= 0){obj.scrollTop = obj.offsetHeight - obj.scrollTop + 1;} else {obj.scrollTop++;console.log(obj.offsetHeight, obj.scrollTop);}},stop: function(){clearInterval(this.timer);},start: function(){this.scroll();} };

html對(duì)應(yīng)代碼

<!DOCTYPE HTML> <html> <head> <meta charset="UTF-8"> <title>Demo</title><style type="text/css">#box { width: 150px;height: 200px;border:1px solid #EFEFEF;background: #F8F8F8;padding:0 20px;line-height:22px;overflow:hidden;}</style> </head><body><div id="box">我是靖鳴君1<br /> 我是靖鳴君2<br /> 我是靖鳴君3<br /> 我是靖鳴君4<br /> 我是靖鳴君5<br />我是靖鳴君1<br /> 我是靖鳴君2<br /> 我是靖鳴君3<br /> 我是靖鳴君4<br /> 我是靖鳴君5<br /></div> </body> </html> 創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)

總結(jié)

以上是生活随笔為你收集整理的js扩展滚动窗口小插件实现文字左右上下滚动效果实例的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。