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 相关文章推荐
基于jquery的页面划词搜索JS
Sep 14 Javascript
JavaScript 类型的包装对象(Typed Wrappers)
Oct 27 Javascript
node.js中的fs.lstatSync方法使用说明
Dec 16 Javascript
使用纯javascript实现经典扫雷游戏
Apr 23 Javascript
javascript实现的简单计时器
Jul 19 Javascript
谈谈我对JavaScript原型和闭包系列理解(随手笔记8)
Dec 24 Javascript
javascript用正则表达式过滤空格的实现代码
Jun 14 Javascript
JS验证码实现代码
Sep 14 Javascript
vue.js在标签属性中插入变量参数的方法
Mar 06 Javascript
js闭包学习心得总结
Apr 17 Javascript
Vuex 使用 v-model 配合 state的方法
Nov 13 Javascript
jquery层次选择器的介绍
Jan 18 jQuery
基于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
收音机频率指针指示不准确和灵敏度低问题
2021/03/02 无线电
c#中的实现php中的preg_replace
2009/12/21 PHP
用php实现的获取网页中的图片并保存到本地的代码
2010/01/05 PHP
php中jQuery插件autocomplate的简单使用笔记
2012/06/14 PHP
php实现简单洗牌算法
2013/06/18 PHP
PHP实现的网站目录扫描索引工具
2016/09/08 PHP
深入解析PHP中SESSION反序列化机制
2017/03/01 PHP
推荐dojo学习笔记
2007/03/24 Javascript
制作高质量的JQuery Plugin 插件的方法
2010/04/20 Javascript
javascript获取隐藏dom的宽高 具体实现
2013/07/14 Javascript
JS中的数组的sort方法使用示例
2014/01/22 Javascript
js使用html()或text()方法获取设置p标签的显示的值
2014/08/01 Javascript
javascript中关于&amp;&amp; 和 || 表达式的小技巧分享
2015/04/10 Javascript
jquery实现键盘左右翻页特效
2015/04/30 Javascript
js验证框架实现代码分享
2016/05/18 Javascript
jQuery实现的简单分页示例
2016/06/01 Javascript
深入理解AngularJS中的ng-bind-html指令和$sce服务
2016/09/08 Javascript
深入理解javascript中的 “this”
2017/01/17 Javascript
Bootstrap modal 多弹窗之叠加显示不出弹窗问题的解决方案
2017/02/23 Javascript
ECMAScript6变量的解构赋值实例详解
2017/09/19 Javascript
JS实现图片放大镜插件详解
2017/11/06 Javascript
AngularJS中重新加载当前路由页面的方法
2018/03/09 Javascript
JavaScript实现邮箱后缀提示功能的示例代码
2018/12/13 Javascript
详解vue2.6插槽更新v-slot用法总结
2019/03/09 Javascript
[01:08]DOTA2次级职业联赛 - Wings 战队宣传片
2014/12/01 DOTA
采用Psyco实现python执行速度提高到与编译语言一样的水平
2014/10/11 Python
关于pip的安装,更新,卸载模块以及使用方法(详解)
2017/05/19 Python
对python_discover方法遍历所有执行的用例详解
2019/02/13 Python
python接口自动化(十七)--Json 数据处理---一次爬坑记(详解)
2019/04/18 Python
python tkinter实现连连看游戏
2020/11/16 Python
欧舒丹比利时官网:L’OCCITANE比利时
2017/04/25 全球购物
美国购买汽车零件网站:Buy Auto Parts
2018/04/02 全球购物
黑白记忆观后感
2015/06/18 职场文书
2016年父亲节寄语
2015/12/04 职场文书
Js类的构建与继承案例详解
2021/09/15 Javascript
python多次执行绘制条形图
2022/04/20 Python