首页 > 代码库 > 写轮播图遇到的那些基础知识
写轮播图遇到的那些基础知识
1.使用定时器造成的性能问题及解决方法(学习自某博主,不允许外传!)
用 clearInterval(timerid);来清除,往往不能马上停止,用什么方法比较好解决?
优化方案如下:
- var timeout = false; //启动及关闭按钮
- function time()
- {
- if(timeout) return;
- Method();
- setTimeout(time,100); //time是指本身,延时递归调用自己,100为间隔调用时间,单位毫秒
- }
总结
一般不用setInterval,而用setTimeout的延时递归来代替interval。
setInterval会产生回调堆积,特别是时间很短的时候。
2.使用CSS与HTML问题及注意事项
如何用原生js获取style属性值?
为什么不使用 .style.xxx?
原因:
用document.getElementById(‘element‘).style.xxx可以获取元素的样式信息,可是它获
取的只是DOM元素style属性里的样式规则,对于通过class属性引用的外部样式表,就拿不到
我们要的信息了。
解决:
DOM标准里有个全局方法getComputedStyle,可以获取到当前对象样式规则信息,如:
getComputedStyle(obj,null).paddingLeft,就能获取到对象的左内边距。但是事情还没完,
万恶的IE不支持此方法,它有自己的一个实现方式,那就是currentStyle,不同于全局方法
getComputedStyle,它是作为DOM元素属性存在的,如:obj.currentStyle.paddingLeft
写轮播图遇到的那些基础知识
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。