在一个界面上,排一列图片,然后如何让图片自动从左向右滚动?求大神指点!
解决方案 »
- js截取字符串
- 为什么一个js代码,在普通浏览器可以,但是在(360极速浏览器)Chrome浏览器下就不可以使用!
- Extjs中,boder layout无法正常显示
- datalist遍历问题
- javascript传参问题,能不能解?
- 请教JS判断输入的问题。
- 一个页面中两个表单,各自表单下有1个提交按钮。我的问题是,如果点击其中一个提交按钮,另外一个表单中的提交按钮也同时自动点击提交,怎么做呢。
- 为什么我的table不能展开?
- 怎么在一个IFRAME里面把光标置到最前面
- 一道阿里实习生的面试题,求解!
- 如何用jQuery在页面实现把一个table中的tb拖拽到另外一个table中,并且把数据添加到新的table中
- 咨询个组件
<html lang="en">
<head>
<meta charset="UTF-8">
<title>轮播图</title>
<style>
*{
margin:0;
padding:0;
}
#div1{
width: 500px;
height: 100px;
margin:50px auto;
border:1px solid grey;
position: relative;
overflow: hidden;
}
#div1 #ul1{
height: 100px;
position: relative;
}
#div1 #ul1 li{
width:80px;
height: 80px;
border:3px double black;
float: left;
margin:7px;
list-style: none;
}
#div1 #ul1 li img{
width:100%;
height: 100%;
}
</style>
<!-- <script src='../../tools.js'></script> -->
<script>
function $(id){
return document.getElementById(id);
}
function startMove(node,jsonObj, complete){//完美运动框架
clearInterval(node.timer);
node.timer = setInterval(function(){
var isEnd = true;
for(var attr in jsonObj){
var iTarget = jsonObj[attr];
var iCur = null;
if(attr == "opacity"){
iCur = parseInt(parseFloat(getStyle(node, attr)) * 100);
}else{
iCur = parseInt(getStyle(node, attr));
}
var speed = (iTarget - iCur) / 8;
speed = speed > 0 ? Math.ceil(speed) : Math.floor(speed);
if(attr == "opacity"){
iCur += speed;
node.style.opacity = iCur / 100;
node.style[attr] = `alpha(opacity=$(iCur))`;
}else{
node.style[attr] = iCur + speed + 'px';
}
if(iCur != iTarget){
isEnd = false;
}
}
if(isEnd){
clearInterval(node.timer);
if(complete){
complete.call(node);
}
}
},30)
}
function getStyle(node, cssStyle){//兼容获取class中的样式
if(node.currentStyle){
return node.currentStyle[cssStyle];
}else{
return getComputedStyle(node)[cssStyle];
}
}
window.onload = function(){
var lis = $("ul1").getElementsByTagName('li');
for(var i = 0; i < lis.length; i++){
var oImg = document.createElement('img');
oImg.src = `../images/${i + 1}.jpg`;
lis[i].appendChild(oImg);
}
$("ul1").innerHTML += $("ul1").innerHTML;
$("ul1").style.width = $("ul1").offsetWidth * 2 + 'px'; /*setInterval(function(){
if($("ul1").offsetLeft <= - $("ul1").offsetWidth / 2){
$("ul1").style.left = 0;
}
var speed = 5;
$("ul1").style.left = $("ul1").offsetLeft - speed + 'px';
},30)*/
/*setInterval(function(){
if($("ul1").offsetLeft <= - $("ul1").offsetWidth / 2){
$("ul1").style.left = 0;
}
var speed = $("ul1").getElementsByTagName('li')[0].offsetWidth + 14;
$("ul1").style.left = $("ul1").offsetLeft - speed + 'px';
},2000)*/
setInterval(function(){
startMove($("ul1"), {
left: $("ul1").offsetLeft - $("ul1").getElementsByTagName('li')[0].offsetWidth - 14
},function(){
if($("ul1").offsetLeft <= - $("ul1").offsetWidth / 2){
$("ul1").style.left = 0;
}
})
},2000) }
</script>
</head>
<body>
<div id="div1">
<ul id="ul1">
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
</div>
</body>
</html>