写轮播图遇到的那些基础知识

Posted 早晨学习的地方

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了写轮播图遇到的那些基础知识相关的知识,希望对你有一定的参考价值。

1.使用定时器造成的性能问题及解决方法(学习自某博主,不允许外传!)

  用 clearInterval(timerid);来清除,往往不能马上停止,用什么方法比较好解决?

  优化方案如下:
 
  1. var timeout = false; //启动及关闭按钮  
  2. function time()  
  3. {  
  4.   if(timeout) return;  
  5.   Method();  
  6.   setTimeout(time,100); //time是指本身,延时递归调用自己,100为间隔调用时间,单位毫秒  
  7. }
  总结
  一般不用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

以上是关于写轮播图遇到的那些基础知识的主要内容,如果未能解决你的问题,请参考以下文章

原生Js写轮播图代码

第一次尝试自己写轮播图

原生js写轮播图效果

原生JS写轮播图(转自https://www.cnblogs.com/LIUYANZUO/p/5679753.html)

swiper插件怎么当图片只有一张时禁止自动轮播

用bootstrap写轮播图的js出现Failed to load resource: net::ERR_TIMED_OUT错误是啥原因呢,该怎么解决