• 原生js实现选项卡样式切换的几种方式。


      先分享一个不能实现的实例(因为es5没有块作用域)

        for(var i=0; i<list.length; i++ )

          {

            list[i].onclick = function(){

                tabchange(i);

              }

          }

      解决方案:

        1.es6新的变量声明方式 let(es6具有块级作用域,解决es5存在的问题)

     

        for(let i=0; i<list.length; i++ )

          {

            list[i].onclick = function(){

                tabchange(i);

              }

          }

        2.利用闭包

        for(var i=0; i<list.length; i++ )

          {

            list[i].onclick = (function(){

                return function(){

                tabchange(i);

                }

              })(i);

          }

        3.为元素对象创建对应的索引

        for(var i=0; i<list.length; i++ )

          {

            list[i].myindex=i;

            list[i].onclick = function(){

                tabchange(this.myindex);//绑定元素对应的索引

              }

          }

      //这种方案一般也用于轮播图,当然是用框架就不用考虑这么多问题了  

  • 相关阅读:
    hibernate各种状态
    Persistence createEntityManagerFactory方法使用
    JS数组学习笔记
    ES6笔记之参数默认值(译)
    JS是按值传递还是按引用传递?
    linux awk命令详解
    Linux Shell笔记之sed
    类似微信红包随机分配js方法
    ionic tabs隐藏完美解决
    mustache 获取json数据内数组对象指定元素的方法
  • 原文地址:https://www.cnblogs.com/angle-xiu/p/11312247.html
Copyright © 2020-2023  润新知