jQuery文字横向滚动效果的实现代码
2019/6/27 22:23:20
本文主要是介绍jQuery文字横向滚动效果的实现代码,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
很多网站都有公告,并且都喜欢用横向滚动的方式来展现。最近自己用jQuery也写了文字横向滚动,实现了自定义滚动速度,鼠标经过时暂停的功能。
HTML代码如下:
<div id="s" style="width:100px; position:relative; white-space:nowrap; overflow:hidden; height:20px;"> <div id="noticeList" style="position:absolute; top:0; height:20px;"><span>jQuery文字横向滚动</span><span>jQuery制作文字横向滚动</span><span>www.zyiz.net</span></div> </div>
JS代码:
方法一:
$.fn.textScroll=function(){ var speed=60,flag=null,tt,that=$(this),child=that.children(); var p_w=that.width(), w=child.width(); child.css({left:p_w}); var t=(w+p_w)/speed * 1000; function play(m){ var tm= m==undefined ? t : m; child.animate({left:-w},tm,"linear",function(){ $(this).css("left",p_w); play(); }); } child.on({ mouseenter:function(){ var l=$(this).position().left; $(this).stop(); tt=(-(-w-l)/speed)*1000; }, mouseleave:function(){ play(tt); tt=undefined; } }); play(); }
方法二:
$.fn.textScroll=functioon(){ var p = $(this), c = p.children(), speed=3000;// 值越大,速度越小 var cw = c.width(),pw=p.width(); var t = (cw / 100) * speed; var f = null, t1 = 0; function ani(tm) { counttime(); c.animate({ left: -cw }, tm, "linear", function () { c.css({ left: pw }); clearInterval(f); t1 = 0; t=((cw+pw)/100)*speed; ani(t); }); } function counttime() { f = setInterval(function () { t1 += 10; }, 10); } p.on({ mouseenter: function () { c.stop(false, false); clearInterval(f); console.log(t1); }, mouseleave: function () { ani(t - t1); console.log(t1); } }); ani(t); }
最后调用$("#s").textScroll();
以上这篇jQuery文字横向滚动效果的实现代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持找一找教程网。
这篇关于jQuery文字横向滚动效果的实现代码的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-09-20Vue资料入门教程:从零开始学习Vue.js
- 2024-09-20Vuex4入门教程:轻松掌握Vue状态管理
- 2024-09-20Element-Plus入门指南:轻松构建美观的Vue组件
- 2024-09-20VueRouter4入门教程:轻松掌握Vue路由
- 2024-09-20Vuex4入门教程:轻松掌握Vue状态管理
- 2024-09-20Vue3课程:新手入门与初级教程详解
- 2024-09-20Vue3课程:新手入门到初级实战指南
- 2024-09-20Vuex4学习:一步一步搭建你的第一个Vuex状态管理库
- 2024-09-19Vue项目中实现TagsView标签栏导航的简单教程
- 2024-09-19Vue3入门指南:基础教程与实战项目