<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>无缝滚动</title>
<link rel="stylesheet" href="../../tab/mobileReset.css" />
<style type="text/css">
#box{width: 500px;height: 50px;background: blue;margin:100px auto;line-height: 50px;padding:0 15px;overflow: hidden}
#box span{color: red;font-size: 14px;}
#box p{color: yellow;font-size: 14px;white-space: nowrap;display: inline-block;}
.boxCon{width: 10000px;}
</style>
</head>
<body>
<div id="box">
<div class="boxCon">
<p id="begin"><span>通知:</span>offset():等同于jQuery中的offset方法,实现获取页面中任意一个元素距离body的偏移(包含左偏移和上偏移),不管当前元素的父级参照物是谁。</p>
<p><span>通知:</span>offset():等同于jQuery中的offset方法,实现获取页面中任意一个元素距离body的偏移(包含左偏移和上偏移),不管当前元素的父级参照物是谁。</p>
</div>
</div>
<script>
var box = document.getElementById("box");
var begin = document.getElementById("begin");
var beginw = getCss(begin,"width");
//无缝轮播代码其实很简单 哈哈
var timer = window.setInterval(function(){
box.scrollLeft++;
var curLeft = box.scrollLeft;
if(curLeft >= beginw){
box.scrollLeft = 0;
}
},1);
//获取元素具体样式方法
function getCss(curEle,attr){
var val = null,reg = null;
if("getComputedStyle" in window){
val = window.getComputedStyle(curEle,null)[attr];
}else{
if(attr === "opacity"){
val = curEle.currentStyle["filter"];
reg = /^alpha\(opacity=(\d+(?:\.\d+)?)\)$/i;
val = reg.test(val)?reg.exec(val)[1]/100:1;
}else{
val = curEle.currentStyle[attr];
}
}
reg = /^(-?\d+(\.\d+)?)(px|pt|rem|em)?$/i;
return reg.test(val)?parseFloat(val):val;
}
</script>
</body>
</html>
网友评论