js实现无缝滚动特效


Posted in Javascript onDecember 20, 2015

本文实例为大家介绍了js实现无缝滚动特效需要做到的功能,以及关键性js代码,分享给大家供大家参考,具体内容如下

运行效果图:

js实现无缝滚动特效

结合下学了的知识,做个模拟的综合性扩展练习~~  大致功能如下:

  • 1、点开html后,图片自动移动展示
  • 2、点击左右方向,可以改变 图片移动的方向(改变left的值,正负)
  • 3、鼠标移入移出图片后,图片暂停移动(setInterval,clearInterval)
  • 4、鼠标移到图片上,高亮(a:hover)
  • 5、点击小图, 下面的大图会改变
  • 6、文字区域随着图片的变化而变化(未成功,有待提高)

 具体代码:

window.onload = function(){

//声明部分( 现在的习惯是要写什么声明什么, 一起写容易搞忘了。。也不知道好不好这样)


var oDiv = document.getElementById('box');


var oUl = oDiv.getElementsByTagName('ul');


var oLi = oUl.getElementsByTagName('li');


var speed = 2;


var timer = null;


 


//让ul的内容增一倍,从而实现无缝滚动


oUl.innerHTML = oUl.innerHTML + oUl.innerHTML;


oUl.style.width = oLi[1].offsetWidth * oLi.length + 'px';


//move函数


function move(){


oUl.style.left = oUl.offsetLeft + speed + 'px';


//控制左


if(oUl.offsetLeft < -oUl.offsetWidth/2){


oUl.style.left = 0;


}



//控制右


if(oUl.offsetLeft > 0){


oUl.style.left = -oUl.offsetWidth/2 + 'px';


}


}



//图标点击~ 控制移动方向



var oLeft = document.getElementById('jt_left');


var oRight= document.getElementById('jt_right');



oLeft.onclick = function(){


speed = -2;


}



oRight.onclick = function(){


speed = 2;


}



//鼠标移入移出效果



oDiv.onmouseover = function(){



clearInterval(timer);


}



oDiv.onmouseout = function(){



timer = setInterval(move,20);


}


timer = setInterval(move,20); 



//点击获取大图







var aA = oDiv.getElementsByTagName('a');


for(var i=0;i<aA.length;i++){



aA[i].onclick = function(){




showPic(this);




return false;



}


}





function showPic(whichpic){



var source = whichpic.href;



var placeholder = document.getElementById('placeholder');



placeholder.src = source;


}

}

最后文字的替换效果 ,本想用图片的方式,让文本框对应的数字跟着变~~ 结果未能成功,不知原因,这方面还需待提高,希望大家能提供一些好的建议,不过js实现无缝滚动还是正常实现了,希望对大家也能有所帮助。

Javascript 相关文章推荐
IE和Firefox下javascript的兼容写法小结
Dec 10 Javascript
基于jQuery实现点击同时更改两个iframe的网址
Jul 01 Javascript
jQuery1.6 类型判断实现代码
Sep 01 Javascript
JQuery判断radio是否选中并获取选中值的示例代码
Oct 17 Javascript
JQuery球队选择实例
May 18 Javascript
JavaScript仿静态分页实现方法
Aug 04 Javascript
javascript数组去重小结
Mar 07 Javascript
漫谈JS引擎的运行机制 你应该知道什么
Jun 15 Javascript
vue的一个分页组件的示例代码
Dec 25 Javascript
js限制input只能输入有效的数字(第一个不能是小数点)
Sep 28 Javascript
利用Promise自定义一个GET请求的函数示例代码
Mar 20 Javascript
微信小程序图片加载失败时替换为默认图片的方法
Dec 09 Javascript
基于JavaScript实现动态创建表格和增加表格行数
Dec 20 #Javascript
原生js页面滚动延迟加载图片
Dec 20 #Javascript
javascript实现的网站访问量统计代码
Dec 20 #Javascript
js实现n秒倒计时后才可以点击的效果
Dec 20 #Javascript
图解js图片轮播效果
Dec 20 #Javascript
谈谈我对JavaScript原型和闭包系列理解(随手笔记6)
Dec 20 #Javascript
基于jquery实现页面滚动到底自动加载数据的功能
Dec 19 #Javascript
You might like
一个PHP的QRcode类与大家分享
2011/11/13 PHP
php递归方法实现无限分类实例代码
2014/02/28 PHP
浅析application/x-www-form-urlencoded和multipart/form-data的区别
2014/06/22 PHP
PHP检测数据类型的几种方法(总结)
2017/03/04 PHP
php中青蛙跳台阶的问题解决方法
2018/10/14 PHP
Yii2框架自定义类统一处理url操作示例
2019/05/25 PHP
在Laravel 的 Blade 模版中实现定义变量
2019/10/14 PHP
jQuery中(function(){})()执行顺序的理解
2013/03/05 Javascript
php跨域调用json的例子
2013/11/13 Javascript
jquery获取css中的选择器(实例讲解)
2013/12/02 Javascript
JSONP之我见
2015/03/24 Javascript
基于JavaScript代码实现pc与手机之间的跳转
2015/12/23 Javascript
实例代码详解javascript实现窗口抖动及qq窗口抖动
2016/01/04 Javascript
javascript弹性运动效果简单实现方法
2016/01/08 Javascript
全面解析vue router 基本使用(动态路由,嵌套路由)
2018/09/02 Javascript
在vue项目实现一个ctrl+f的搜索功能
2020/02/28 Javascript
用python登录Dr.com思路以及代码分享
2014/06/25 Python
Python自定义简单图轴简单实例
2018/01/08 Python
自学python的建议和周期预算
2019/01/30 Python
用pycharm开发django项目示例代码
2019/06/13 Python
Python中的list与tuple集合区别解析
2019/10/12 Python
python3.8与pyinstaller冲突问题的快速解决方法
2020/01/16 Python
python爬虫搭配起Bilibili唧唧的流程分析
2020/12/01 Python
欧洲有机婴儿食品最大的市场:Organic Baby Food(供美国和加拿大)
2018/03/28 全球购物
卡西欧B级产品官方网站:Casio Outlet
2018/05/22 全球购物
写出一个方法实现冒泡排序
2016/07/08 面试题
班级出游活动计划书
2014/08/15 职场文书
学校总务处领导班子民主生活会对照检查材料思想汇报
2014/09/27 职场文书
2014年终工作总结范本
2014/12/15 职场文书
2015年安全生产责任书
2015/01/30 职场文书
2015年护士长个人工作总结
2015/04/24 职场文书
小学生教师节广播稿
2015/08/19 职场文书
2016春季幼儿园大班开学寄语
2015/12/03 职场文书
2016见义勇为事迹材料汇总
2016/03/01 职场文书
JavaScript嵌入百度地图API的最详细方法
2021/04/16 Javascript
Apache Linkis 中间件架构及快速安装步骤
2022/03/16 Servers