效果图如下:

代码:

<!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">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<style type="text/css">
*{ margin:0; padding:0;}
#imgMove{ height:205px; width:624px; border:#000 1px solid; position:relative; margin:200px auto;overflow:hidden;}
#imgMove ul{ height:205px;position:absolute; left:0; overflow:hidden;}
#imgMove li{ list-style:none; float:left; height:205px; width:156px; margin:0;}
a img,img{ border:none;}
span{ z-index:999;height:68px; width:68px; display:none;position:absolute; cursor:pointer;}
#moveLeft{left:0; top:68px; }
#moveRight{right:-10px; top:68px;}
</style>
<script type="text/javascript">
window.onload=function(){
var oDiv=document.getElementById('imgMove');
var oUl=oDiv.getElementsByTagName('ul')[0];
var oli=oUl.getElementsByTagName('li');
var liSpeed=1;
var ospan=oDiv.getElementsByTagName('span');
var rightmove=document.getElementById('moveRight');
    var leftmove=document.getElementById('moveLeft');

function show(){
ospan[0].style.display="block";
ospan[1].style.display="block";
}
oUl.onmouseover=function (){
show();
}
oUl.onmouseout=function(){
ospan[0].style.display="none";
ospan[1].style.display="none";
}
ospan[0].onmouseover=function(){
liSpeed=1;
        show();/*加这个函数是为了去除向左向右的图片闪动*/
}
ospan[1].onmouseover=function(){
   liSpeed=-1;
        show();/*加这个函数是为了去除向左向右的图片闪动*/
}

oUl.style.width=oli[0].offsetWidth*oli.length+'px';;
setInterval(function(){
oUl.style.left=oUl.offsetLeft-liSpeed+'px';
if(oUl.offsetLeft<-oUl.offsetWidth/2){
oUl.style.left=0;
}
else if(oUl.offsetLeft>0)
{
oUl.style.left=-oUl.offsetWidth/2+'px';
}
},30)
}
</script>
</head>

<body>
<div id="imgMove">

<ul>
   <li><a href="#"><img src="data:images/1.png" /></a></li>
   <li><a href="#"><img src="data:images/2.png" /></a></li>
   <li><a href="#"><img src="data:images/3.png" /></a></li>
   <li><a href="#"><img src="data:images/4.png" /></a></li>
   <li><a href="#"><img src="data:images/1.png" /></a></li>
   <li><a href="#"><img src="data:images/2.png" /></a></li>
   <li><a href="#"><img src="data:images/3.png" /></a></li>
   <li><a href="#"><img src="data:images/4.png" /></a></li>
 </ul>
<span id="moveLeft"><img src="data:images/left.png" /></span>
<span id="moveRight"><img src="data:images/right.png" /></div>
</div>
</body>
</html>

javascript实现的可改变滚动方向的无缝滚动的更多相关文章

  1. JavaScript----marquee滚动标签 图片无缝滚动 插入百度地图

    页面的自动滚动效果,可由javascript来实现, 但是有一个html标签 - <marquee></marquee>可以实现多种滚动效果,无需js控制. 使用marquee ...

  2. 轮播图采用js、jquery实现无缝滚动和非无缝滚动的四种案例实现,兼容ie低版本浏览器

    项目源代码下载地址:轮播图 以下为项目实现效果:(由于gif太大,所以只上传一张图片,但效果完全能实现,经测试,在ie各版本浏览器及chrome,firefox等浏览器中均能实现效果,可以实现点击切换 ...

  3. js判断鼠标滑轮滚动方向并根据滚动的方向触发不同的事件

    <script> var scrollFunc = function (e) { var direct = 0; e = e || window.event; if (e.wheelDel ...

  4. CSS和jQuery分别实现图片无缝滚动效果

    一.效果图 二.使用CSS实现 <!DOCTYPE html> <html> <head> <meta charset="utf-8"&g ...

  5. 应用JavaScript搭建一个简易页面图片无缝滚动效果

    页面图片无缝滚动JavaScript原理:移动的区块包含图片内容,区块相对父级元素进行定位脱离文档流.再令区块的left值每隔固定的时间进行等量减少(或增大)从而实现区块的匀速运动.由于每次间隔移动的 ...

  6. Javascript学习之无缝滚动

    无缝滚动Javascript: <!DOCTYPE html> <html> <head> <meta charset="utf-8"&g ...

  7. JavaScript判断鼠标滑轮是向下还是向上滚动

    我们常用的就是鼠标,鼠标中键一般都用于滑动网页,但是网页中很多很炫的效果,使用鼠标滑轮操作更好. 当然对于手机就没有这个设备了,所以就不用考虑手机端的实现方法,手机端有触摸滑动事件. 使用JavaSc ...

  8. Javascript 学习笔记 无缝滚动

    效果 : 鼠标移入图片 停止滚动, 鼠标移出自动滚动 可以调整向左或右方向滚动 <style type="text/css"> * { margin:; padding ...

  9. javascript小例子:實現四方向文本无缝滚动效果

    实现一个文本无缝滚动的效果: <!DOCTYPE html> <!--[if lt IE 7 ]> <html lang="zh-CN" class= ...

随机推荐

  1. Qt实现QQ好友下拉列表(用QListView实现,所以还得定义它的Model)

    偶然发现Qt有个控件可以实现下拉列表,所以就试着实现一下类似QQ面板的下拉列表,这里主要实现几个功能: 1.可以删除列表中图标 2.可以像qq一样的,把某个分组下的图标转移到另外的分组 3.添加分组 ...

  2. char、signed char 和 unsigned char 的区别

    ANSI C 提供了3种字符类型,分别是char.signed char.unsigned char.而不是像short.int一样只有两种(int默认就是signed int). 三者都占1个字节( ...

  3. c语言利用指针计算字符串的长度

    可以用strlen函数,这里我们自己写一个. 注意:不能用scanf,scanf一遇到空格就认为输入结束.应该用gets(),遇到换行符或EOF结束.说明可以接受空格. #include<cst ...

  4. jquery validate 插件使用小结

    项目中整合了jquery validate插件,仿照别人的使用写了我的表单验证,结果不起作用.然后就各种找原因. 在网上下了jquery validate插件的完整包,看了看里边的例子,跟我的使用貌似 ...

  5. 高斯拉普拉斯算子(Laplace of Gaussian)

    高斯拉普拉斯(Laplace of Gaussian) kezunhai@gmail.com http://blog.csdn.net/kezunhai Laplace算子作为一种优秀的边缘检测算子, ...

  6. Java GUI使用exe4j打包exe文件

    exe4j下载地址:http://blog.csdn.net/cciii/article/details/17083531 1.  在MyEclipse将java项目打包成可执行jar文件.项目结构如 ...

  7. js判断是否为pc端或移动端

    function IsPC() { var userAgentInfo = navigator.userAgent; var Agents = new Array("Android" ...

  8. Ch05 视图模型

    5.1  什么是视图模型 5.1.1  在线商店示例 5.1.2  建立视图模型 5.1.3  交付表现模型 5.1.4  ViewData.Model 5.2  表现用户输入 5.2.1  设计(输 ...

  9. ssh登录的时候,根本不给输入密码的机会,直接拒绝,是因为BatchMode的设置

    BatchMode no“BatchMode”如果设为“yes”,passphrase/password(交互式输入口令)的提示将被禁止.当不能交互式输入口令的时候,这个选项对脚本文件和批处理任务十分 ...

  10. OnClientClick和OnClick

    OnClientClick是客户端事件处理方法,一般采用JavaScript来进行处理,也就是直接在IE端运行,一点击就运行 OnClick是服务器端事件处理函数,使用C#或者vb.net,在服务器端 ...