更改className与更改innerHTML

时间:2014-06-26 06:33:37

标签: css innerhtml classname

我需要切换两个单词(即Hello& World)。现在我创建了两个span并使用CSS我正在切换它们。但是我可以创建一个div并单独更改innerHTML。我的问题是哪一个有效且有效?下面是HTML,CSS,JS代码示例。

<div class='enablecss2'>
    <span class='css1'>Hello</span>
    <span class='css2'>World</span>
</div>

.css2 {
    display:none;
}

.enablecss2 .css2 {
    display:block;
}

.enablecss2 .css1 {
    display:none;
}

<script>
    function toggle(el,event)
      { 
          if(el.className == '')
              el.className = 'enablecss2';
          else
              el.className = '';
      }

</script>

1 个答案:

答案 0 :(得分:0)

两者都是有效的方法,并且就切换的渲染速度而言无关紧要。但就高效编码而言(=具有相同结果的代码较少),innerHTML方法是更好的方法,因为您需要更少的HTML而没有CSS代码:

<div class='enablecss2'>
    Hello
</div>

<script>
// your toggle function
</script>