发现一个轮播图切换有BUG
为什么-600不设置在<div id="list" style="left:-600px";点击左右就不会有效果呢?
为什么-600不设置在<div id="list" style="left:-600px";点击左右就不会有效果呢?
2016-09-10
如果你js里用的是style.left获取值的话,这种方法只适用于内嵌在标签里的样式,写在<style type="text/css">里面的内部样式,与外部引入的样式都无法通过该方法获取值(但可以设置元素的left值),所以点击左右的时候就会没有效果,你可以加一条alert语句看一下,获取到的是空。如果不想写成内嵌的样式,可以在获取left值的时候用:
var computedStyle = document.defaultView.getComputedStyle(elem, null);
console.log(computedStyle.left);//控制台输出left的值,比如“-600px”
不过这个不是所有浏览器兼容,IE的话没有该方法,用elem.currentStyle.left获取样式~希望可以帮到你~
举报