JS简单封装的图片无缝滚动效果示例【测试可用】


Posted in Javascript onMarch 22, 2017

本文实例讲述了JS简单封装的图片无缝滚动效果。分享给大家供大家参考,具体如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="utf-8">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>无缝滚动图片示例-F-BLOG</title>
    <style type="text/css">
      ul{list-style:none;padding:0px;margin:0px;}
      #demo1 ul,#demo2 ul{width:400px;}
      #demo1 li,#demo2 li{float:left;}
    </style>
    <script type="text/javascript">
      function $(id){
        return document.getElementById(id);
      }
      function Marquee(id,toFollow,speed)
      {
        var doScroll;
        var scrollBox_x="<table cellpadding='0' cellspacing='0'><tr><td id='"+id+"abox'>"+$(id).innerHTML+"</td><td id='"+id+"bbox'>"+$(id).innerHTML+"</td></tr></table>";
        var scrollBox_y="<table cellpadding='0' cellspacing='0'><tr><td id='"+id+"abox'>"+$(id).innerHTML+"</td></tr><tr><td id='"+id+"bbox'>"+$(id).innerHTML+"</td></tr></table>";
        var begin=function(){
          switch(toFollow){
            case "left":
              $(id).innerHTML=scrollBox_x;
              doScroll=setInterval(function(){
                if($(id).scrollLeft==$(id+"abox").offsetWidth) $(id).scrollLeft=0;
                $(id).scrollLeft++;
              },speed);
              break;
            case "right":
              $(id).innerHTML=scrollBox_x;
              doScroll=setInterval(function(){
                if($(id).scrollLeft<=0) $(id).scrollLeft=$(id+"bbox").offsetWidth;
                $(id).scrollLeft--;
              },speed);
              break;
            case "top":
              $(id).innerHTML=scrollBox_y;
              doScroll=setInterval(function(){
                if($(id).scrollTop==$(id+"abox").offsetHeight) $(id).scrollTop=0;
                $(id).scrollTop++;
              },speed);
              break;
            case "bottom":
              $(id).innerHTML=scrollBox_y;
              doScroll=setInterval(function(){
                if($(id).scrollTop<=0) $(id).scrollTop=$(id+"bbox").offsetHeight;
                $(id).scrollTop--;
              },speed);
              break;
            }
          }
          begin();
          $(id).onmouseover=function() {clearInterval(doScroll);}
          $(id).onmouseout=function() {begin();}
        }
        window.onload=function(){
          Marquee("demo2","left",30);
          Marquee("demo1","right",20);
          Marquee("demo3","top",30);
          Marquee("demo4","bottom",30);
        }
</script>
  </head>
<body>
   <div id="demo1" style="overflow:hidden;height:100px;width:300px;">
     <ul>
       <li><img src="mm.jpg" mce_src="mm.jpg" style="height:100px;width:200px;" /></li>
       <li><img src="me.jpg" mce_src="me.jpg" style="height:100px;width:200px;" /></li>
     </ul>
   </div>
   <br/>
   <div id="demo2" style="overflow:hidden;height:100px;width:300px;">
     <ul>
       <li><img src="mm.jpg" mce_src="mm.jpg" style="height:100px;width:200px;" /></li>
       <li><img src="me.jpg" mce_src="me.jpg" style="height:100px;width:200px;" /></li>
     </ul>
   </div>
   <br/>
   <div id="demo3" style="overflow:hidden;height:150px;width:200px;">
     <ul>
       <li><img src="mm.jpg" mce_src="mm.jpg" style="height:100px;width:200px;" /></li>
       <li><img src="me.jpg" mce_src="me.jpg" style="height:100px;width:200px;" /></li>
     </ul>
   </div>
   <br/>
   <div id="demo4" style="overflow:hidden;height:150px;width:200px;">
     <ul>
       <li><img src="mm.jpg" mce_src="mm.jpg" style="height:100px;width:200px;" /></li>
       <li><img src="me.jpg" mce_src="me.jpg" style="height:100px;width:200px;" /></li>
     </ul>
   </div>
</body>
</html>

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
用一段js程序来实现动画功能
Mar 06 Javascript
可以把编码转换成 gb2312编码lib.UTF8toGB2312.js
Aug 21 Javascript
JQuery 绑定select标签的onchange事件,弹出选择的值,并实现跳转、传参
Jan 06 Javascript
javascript对数组的常用操作代码 数组方法总汇
Jan 27 Javascript
使用jquery实现简单的ajax
Jul 08 Javascript
一个简单的Node.js异步操作管理器分享
Apr 29 Javascript
Javascript前端UI框架Kit使用指南之kitjs的对话框组件
Nov 28 Javascript
jQuery中removeData()方法用法实例
Dec 27 Javascript
js实现有过渡渐变效果的图片轮播相册(兼容IE,ff)
Jan 19 Javascript
利用Angular.js编写公共提示模块的方法教程
May 28 Javascript
Vue 组件注册实例详解
Feb 23 Javascript
Webpack按需加载打包chunk命名的方法
Sep 22 Javascript
Vue计算属性的学习笔记
Mar 22 #Javascript
Angular2实现自定义双向绑定属性
Mar 22 #Javascript
Bootstrap如何激活导航状态
Mar 22 #Javascript
Bootstrap超大屏幕的实现代码
Mar 22 #Javascript
Bootstrap缩略图的创建方法
Mar 22 #Javascript
JS+DIV实现的卷帘效果示例
Mar 22 #Javascript
Bootstrap页面标题Page Header的实现方法
Mar 22 #Javascript
You might like
让PHP支持页面回退的两种方法
2008/01/10 PHP
XAMPP安装与使用方法详细解析
2013/11/27 PHP
php实现字符串首字母大写和单词首字母大写的方法
2015/03/14 PHP
基于linnux+phantomjs实现生成图片格式的网页快照
2015/04/15 PHP
深入解析WordPress中加载模板的get_template_part函数
2016/01/11 PHP
浅析php中array_map和array_walk的使用对比
2016/11/20 PHP
Laravel 在views中加载公共页面的实现代码
2019/10/22 PHP
永不消失的title提示代码
2007/02/15 Javascript
JQUERY操作JSON实例代码
2010/02/09 Javascript
Mac地址验证的javascript代码
2013/11/09 Javascript
javascript匿名函数实例分析
2014/11/18 Javascript
jQuery使用之处理页面元素用法实例
2015/01/19 Javascript
jQuery的bind()方法使用详解
2015/07/15 Javascript
浅谈jQuery的offset()方法及示例分享
2015/07/17 Javascript
nodejs创建web服务器之hello world程序
2015/08/20 NodeJs
jQuery实现滚动条滚动到子元素位置(方便定位)
2017/01/08 Javascript
详解Angular2组件之间如何通信
2017/06/22 Javascript
基于javascript中的typeof和类型判断(详解)
2017/10/27 Javascript
JS简单实现动态添加HTML标记的方法示例
2018/04/08 Javascript
Webpack的dll功能使用
2018/06/28 Javascript
vue3.0 CLI - 2.4 - 新组件 Forms.vue 中学习表单
2018/09/14 Javascript
vue 导航内容设置选中状态样式的例子
2019/11/01 Javascript
快速解决Vue、element-ui的resetFields()方法重置表单无效的问题
2020/08/12 Javascript
Python判断值是否在list或set中的性能对比分析
2016/04/16 Python
python利用跳板机ssh远程连接redis的方法
2019/02/19 Python
pycharm 添加解释器的方法步骤
2020/08/31 Python
CSS3实现苹果手机解锁的字体闪亮效果示例
2021/01/05 HTML / CSS
Zipadee-Zip襁褓过渡毯:Sleeping Baby
2018/12/30 全球购物
嘻哈珠宝品牌:KRKC&CO
2020/10/19 全球购物
直接有效的自我评价
2014/01/11 职场文书
大学生村官承诺书
2014/03/28 职场文书
经理任命书模板
2014/06/06 职场文书
新兵入伍心得体会
2014/09/04 职场文书
教师批评与自我批评发言稿
2014/10/15 职场文书
房屋转让协议书
2014/10/18 职场文书
小学生暑假安全保证书
2015/07/13 职场文书