jQuery文字横向滚动效果的实现代码


Posted in Javascript onMay 31, 2016

很多网站都有公告,并且都喜欢用横向滚动的方式来展现。最近自己用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>3water.com</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文字横向滚动效果的实现代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
ExtJS Store的数据访问与更新问题
Apr 28 Javascript
各浏览器中querySelector和querySelectorAll的实现差异分析
May 23 Javascript
jQuery实现限制textarea文本框输入字符数量的方法
May 28 Javascript
JQuery替换DOM节点的方法
Jun 11 Javascript
Javascript 正则表达式校验数字的简单实例
Nov 02 Javascript
利用jQuery来动态为属性添加或者删除属性的简单方法
Dec 02 Javascript
详解Sea.js中Module.exports和exports的区别
Feb 12 Javascript
AngularJS 单选框及多选框的双向动态绑定
Apr 20 Javascript
第一次记录Bootstrap table学习笔记(1)
May 18 Javascript
使用async、enterproxy控制并发数量的方法详解
Jan 02 Javascript
jQuery删除/清空指定元素的所有子节点实例代码
Jul 04 jQuery
使用JS实现动态时钟
Mar 12 Javascript
Javascript实现跑马灯效果的简单实例
May 31 #Javascript
javascript实现简易计算器的代码
May 31 #Javascript
javascript实现任务栏消息提示的简单实例
May 31 #Javascript
SWFUpload多文件上传及文件个数限制的方法
May 31 #Javascript
js弹出框、对话框、提示框、弹窗实现方法总结(推荐)
May 31 #Javascript
javascript事件模型介绍
May 31 #Javascript
使用JavaScript实现弹出层效果的简单实例
May 31 #Javascript
You might like
解析php中const与define的应用区别
2013/06/18 PHP
Drupal7连接多个数据库及常见问题解决
2014/03/02 PHP
一个php生成16位随机数的代码(两种方法)
2014/09/16 PHP
php防止恶意刷新与刷票的方法
2014/11/21 PHP
php可扩展的验证类实例(可对邮件、手机号、URL等验证)
2015/07/09 PHP
学习ExtJS TextField常用方法
2009/10/07 Javascript
textarea中的手动换行处理的jquery代码
2011/02/26 Javascript
JS左右无缝滚动(一般方法+面向对象方法)
2012/08/17 Javascript
innerText 使用示例
2014/01/23 Javascript
javascript对JSON数据排序的3个例子
2014/04/12 Javascript
如何编写高质量JS代码(续)
2015/02/25 Javascript
JavaScript学习笔记之DOM基础 2.4
2015/08/14 Javascript
使用vue.js制作分页组件
2016/06/27 Javascript
jQuery 插件封装的方法
2016/11/16 Javascript
JavaScript基于扩展String实现替换字符串中index处字符的方法
2017/06/13 Javascript
详解vue服务端渲染(SSR)初探
2017/06/19 Javascript
javascript实现文字无缝滚动效果
2017/08/26 Javascript
基于打包工具Webpack进行项目开发实例
2018/05/29 Javascript
createObjectURL方法实现本地图片预览
2019/09/30 Javascript
Vue.js下拉菜单组件使用方法详解
2019/10/19 Javascript
JavaScript享元模式原理与用法实例详解
2020/03/09 Javascript
[17:45]DOTA2 HEROES教学视频教你分分钟做大人-军团指挥官
2014/06/11 DOTA
[01:02:18]VGJ.S vs infamous Supermajor 败者组 BO3 第一场 6.4
2018/06/05 DOTA
[01:20]DOTA2更新全新英雄 天涯墨客现已加入游戏
2018/08/25 DOTA
关于Python中浮点数精度处理的技巧总结
2017/08/10 Python
python中文件变化监控示例(watchdog)
2017/10/16 Python
python判断数字是否是超级素数幂
2018/09/27 Python
Python面向对象之类和对象属性的增删改查操作示例
2018/12/14 Python
python实现windows倒计时锁屏功能
2019/07/30 Python
flask利用flask-wtf验证上传的文件的方法
2020/01/17 Python
python GUI库图形界面开发之PyQt5不规则窗口实现与显示GIF动画的详细方法与实例
2020/03/09 Python
安全技术说明书
2014/05/09 职场文书
医院节能减排方案
2014/06/13 职场文书
2014年精神文明工作总结
2014/12/23 职场文书
2015年党员个人工作总结
2015/05/13 职场文书
幼儿园教师读书笔记
2015/06/29 职场文书