js焦点文字滚动效果代码分享


Posted in Javascript onAugust 25, 2015

本文实例讲述了js焦点文字滚动效果。分享给大家供大家参考。具体如下:
效果描述:
今天推荐的这个又是一个原生的js焦点图效果
默认自动切换,也可以手动切换
javascript代码采用函数式对象编程,也就是javascript编程中的Module模式
基本用法很简单,主要特点有三
1、模块化,可重用
2、封装了变量和function,和全局的命名空间不接触,不污染全局变量
3、只暴露可用public方法,其他私有方法全部隐藏,确保js相互之间不会冲突
运行效果图:-------------------查看效果-------------------

js焦点文字滚动效果代码分享

小提示:浏览器中如果不能正常运行,可以尝试切换浏览模式。
为大家分享的jQuery下拉美化搜索表单效果代码如下

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>纯js(不依赖现有框架)焦点文字滚动效果</title>
<style >
*{margin:0;padding:0; list-style:none;}

#slider{overflow:hidden;width:470px;height:150px;position:relative; margin:100px auto;}
#slider .pics{width:470px;height:150px}
#slider .pics li{height:150px;width:470px;float:left}
#slider #nav {position:absolute;bottom:5px;right:5px;}
#slider #nav li.nav{background:#F47500; color:#fff;}
#slider #nav li{border:1px solid #f47500; color:#d94b01; cursor:pointer;background:#fff;font-size:12px; height:15px;width:15px;float:left;margin-left:4px;display:inline;text-align:center}
</style>
</head>
<body>

<!--代码部分begin-->
<div id="slider">
 <ul class="pics">
 <li><img alt="js焦点图效果" src="images/01.jpg" /></li>
 <li><img alt="js焦点图效果" src="images/02.jpg" /></li>
 <li><img alt="js焦点图效果" src="images/03.jpg" /></li>
 <li><img alt="js焦点图效果" src="images/04.jpg" /></li>
 <li><img alt="js焦点图效果" src="images/05.jpg" /></li>
 </ul>
 <ul id="nav">
 <li onmouseover="setTimeout(function(){lanrenzhijia.slider.pos(0)},300)">1</li>
 <li onmouseover="setTimeout(function(){lanrenzhijia.slider.pos(1)},300)">2</li>
 <li onmouseover="setTimeout(function(){lanrenzhijia.slider.pos(2)},300)">3</li>
 <li onmouseover="setTimeout(function(){lanrenzhijia.slider.pos(3)},300)">4</li>
 <li onmouseover="setTimeout(function(){lanrenzhijia.slider.pos(4)},300)">5</li>
 </ul>
</div>
<script>
var lanrenzhijia = {}, H$ = function(id){return document.getElementById(id)}, H$$ = function(c,p){return p.getElementsByTagName(c)}
lanrenzhijia.slider = function(){
 return{
 init:function(id,options){
  var ul = this.u = H$$('ul',H$(id))[0], li = H$$('li',ul); this.l=li.length; this.index = 0;
  if(options.navId&&options.curClass){this.nav = H$$('li',H$(options.navId)), this.c = options.curClass;}
  this.a=options.auto||0; this.v=options.vertical||0;H$(id).style.overflow = 'hidden';H$(id).style.position = 'relative';ul.style.position='absolute';
  if(this.v){ul.style.top=0; this.h=options.height||li[0].offsetHeight; ul.style.height=(this.l*this.h)+'px';}
  else{ul.style.left=0; this.w=options.width||li[0].offsetWidth; ul.style.width=(this.l*this.w)+'px';}
  this.pos(options.index||0,this.a?1:0);
 },
 
 pos:function(pos,a){
  clearInterval(this.u.posAnim); clearInterval(this.u.auto);
  var curPos=this.v?parseInt(this.u.style.top):parseInt(this.u.style.left),
  correctPos=this.v?pos*this.h:pos*this.w, 
  direction = correctPos>Math.abs(curPos)?1:-1;
  correctPos*=-1; 
  this.index = pos;
  if(this.nav){for(var i=0;i<this.l;i++){this.nav[i].className = i==pos?this.c:''}}
  this.u.posAnim = setInterval(function(){lanrenzhijia.slider.anim(correctPos,direction,a)},10);
 },
 
 anim:function(des,dir,a){
  var curPos=this.v?parseInt(this.u.style.top):parseInt(this.u.style.left);
  if(curPos == des){
  clearInterval(this.u.posAnim);
  if(a||this.a){lanrenzhijia.slider.auto()}
  }
  else{
  var v=curPos-Math.ceil(Math.abs(des-curPos)*.07)*dir+'px';
  this.v?this.u.style.top=v:this.u.style.left=v;
  }
 },
 
 auto:function(){
  this.u.auto=setInterval(function(){lanrenzhijia.slider.move(1,1)},this.a*1000)
 },
 
 move:function(n,a){
  var num=this.index+n, i=n==1?num==this.l?0:num:num<0?this.l-1:num; lanrenzhijia.slider.pos(i,a);
 }
 };
}();
</script>
<script>
lanrenzhijia.slider.init('slider',{ 
 auto:3,
 vertical:1,
 navId:'nav',
 curClass:'nav',
 index:0});
</script>
<!--代码部分end-->

</body>
</html>

以上就是为大家分享的js(不依赖现有框架)焦点文字滚动效果代码,希望大家可以喜欢。

Javascript 相关文章推荐
JQuery 国际象棋棋盘 实现代码
Jun 26 Javascript
jQuery学习笔记 获取jQuery对象
Sep 19 Javascript
基于datagrid框架的查询
Apr 08 Javascript
Jquery 复选框取值兼容FF和IE8(测试有效)
Oct 29 Javascript
jQuery幻灯片带缩略图轮播效果代码分享
Aug 17 Javascript
javascript关于继承解析
May 10 Javascript
JavaScript基础重点(必看)
Jul 09 Javascript
详细探究ES6之Proxy代理
Jul 22 Javascript
js事件冒泡与事件捕获详解
Feb 20 Javascript
原生JS实现列表子元素顺序反转的方法分析
Jul 02 Javascript
echarts整合多个类似option的方法实例
Jul 10 Javascript
微信打开网址添加在浏览器中打开提示的办法
May 20 Javascript
JS实现灵巧的下拉导航效果代码
Aug 25 #Javascript
基于jQuery实现仿百度首页换肤背景图片切换代码
Aug 25 #Javascript
jQuery实现类似标签风格的导航菜单效果代码
Aug 25 #Javascript
jQuery下拉美化搜索表单效果代码分享
Aug 25 #Javascript
jQuery实现下滑菜单导航效果代码
Aug 25 #Javascript
Jquery 分页插件之Jquery Pagination
Aug 25 #Javascript
js实现的tab标签切换效果代码分享
Aug 25 #Javascript
You might like
PHP中删除变量时unset()和null的区别分析
2011/01/27 PHP
php rsa加密解密使用详解
2015/01/14 PHP
php发送与接收流文件的方法
2015/02/11 PHP
在php和MySql中计算时间差的方法详解
2015/03/27 PHP
PHP网站建设的流程与步骤分享
2015/09/25 PHP
PHP7常量数组用法分析
2016/09/26 PHP
PHP构造函数与析构函数用法示例
2016/09/28 PHP
php设计模式之职责链模式实例分析【星际争霸游戏案例】
2020/03/27 PHP
PHP获取类私有属性的3种方法
2020/09/10 PHP
PHP7 弃用功能
2021/03/09 PHP
统一接口:为FireFox添加IE的方法和属性的js代码
2007/03/25 Javascript
javascript 对象定义方法 简单易学
2009/03/22 Javascript
qq悬浮代码(兼容各个浏览器)
2014/01/29 Javascript
node.js中的path.join方法使用说明
2014/12/08 Javascript
javascript实现验证身份证号的有效性并提示
2015/04/30 Javascript
javascript实现C语言经典程序题
2015/11/29 Javascript
js表单处理中单选、多选、选择框值的获取及表单的序列化
2016/03/08 Javascript
javascript模块化简单解析
2016/04/07 Javascript
jQuery插件pagination实现无刷新分页
2016/05/21 Javascript
bootstrap栅格系统示例代码分享
2017/05/22 Javascript
VUE实现一个分页组件的示例
2017/09/13 Javascript
简单实现节流函数和防抖函数过程解析
2019/10/08 Javascript
javascript 原型与原型链的理解及实例分析
2019/11/23 Javascript
Python 初始化多维数组代码
2008/09/06 Python
python client使用http post 到server端的代码
2013/02/10 Python
python实现从字符串中找出字符1的位置以及个数的方法
2014/08/25 Python
零基础写python爬虫之爬虫框架Scrapy安装配置
2014/11/06 Python
python获取局域网占带宽最大3个ip的方法
2015/07/09 Python
python实现多线程的两种方式
2016/05/22 Python
Python优先队列实现方法示例
2017/09/21 Python
对Python的zip函数妙用,旋转矩阵详解
2018/12/13 Python
Python pandas DataFrame操作的实现代码
2019/06/21 Python
使用python实现名片管理系统
2020/06/18 Python
医德医风学习心得体会
2016/01/25 职场文书
优秀乡村医生事迹材料(2016精选版)
2016/02/29 职场文书
小型企业的绩效考核制度模板
2019/11/21 职场文书