js实现无缝滚动特效

 更新时间:2015年12月20日 09:31:33   作者:霪霖笙箫  
这篇文章主要介绍了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数据类型及相互间的转换规则

    JavaScript数据类型及相互间的转换规则

    这篇文章主要介绍了JavaScript数据类型及相互间的转换规则,文章通过围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-09-09
  • js arguments,jcallee caller用法总结

    js arguments,jcallee caller用法总结

    这篇文章主要介绍了js中arguments, jcallee caller用法。需要的朋友可以过来参考下,希望对大家有所帮助
    2013-11-11
  • JS开发中百度地图+城市联动实现实时触发查询地址功能

    JS开发中百度地图+城市联动实现实时触发查询地址功能

    这篇文章主要介绍了JS开发中百度地图+城市联动实现实时触发查询地址功能,需要的朋友可以参考下
    2017-04-04
  • JavaScript防抖与节流详解

    JavaScript防抖与节流详解

    这篇文章主要介绍了JS中的防抖与节流及作用详解,本文通过文字说明加示例代码的形式给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-10-10
  • 浅谈javascript中return语句

    浅谈javascript中return语句

    这篇文章主要给大家简单介绍了javascript中return语句,有需要的小伙伴可以参考下。
    2015-07-07
  • 利用Three.js绘制酷炫的三角形

    利用Three.js绘制酷炫的三角形

    这篇文章主要为大家详细介绍了如何利用Three.js中的BufferGeometry绘制酷炫的三角形,文中的示例代码讲解详细,感兴趣的可以尝试一下
    2022-12-12
  • js 小贴士一星期合集

    js 小贴士一星期合集

    js 小贴士一星期合集,学习js的朋友可以参考下。
    2010-04-04
  • 微信小程序实现多行文字滚动

    微信小程序实现多行文字滚动

    这篇文章主要为大家详细介绍了微信小程序实现多行文字滚动,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-11-11
  • GoJs中使用HTML方法示例

    GoJs中使用HTML方法示例

    这篇文章主要为大家介绍了GoJs中使用HTML方法示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-05-05
  • 小程序图片剪裁加旋转的示例代码

    小程序图片剪裁加旋转的示例代码

    这篇文章主要介绍了小程序图片剪裁的示例代码,可以通过手势控制旋转缩放移动,也可以点击旋转进行90度旋转,非常具有实用价值,感兴趣的小伙伴们可以参考一下
    2018-07-07

最新评论