网页的结构层、表示层和行为层分离的越彻底,维护及更新就越容易。结构层和表示层可以彻底的分离,结构层和行为层也可以分离,但是当用行为层来操纵表示层时,情况就有些麻烦。
当在javascript里改变css时,我们可能会直接在Javascript代码用诸如tr.style.color="red"这样的语句来操纵。但是如果我们这样做的话就违背了三个层面相互分离的原则,对以后的维护也不利。因为假如以后要把red改为blue,我们就不是在css里来改变,而是得在javascript代码里来寻找改变。那么怎样做到既可以用javascript来改变css样式,而又实现行为层和表示层的分离呢?
其实我们可以给元素节点对象赋予一个类属性,然后在css里设定这个类的值,这样就可以实现既可以操纵css又实现的分离。当我们要改变某个对象的外观时,我们可以给它增加class属性,而不是直接设定style.color这样的语句。color可以在css的类里面来设定。这样我们操纵的就只是一个class属性,而不是直接的css值。
当在javascript里改变css时,我们可能会直接在Javascript代码用诸如tr.style.color="red"这样的语句来操纵。但是如果我们这样做的话就违背了三个层面相互分离的原则,对以后的维护也不利。因为假如以后要把red改为blue,我们就不是在css里来改变,而是得在javascript代码里来寻找改变。那么怎样做到既可以用javascript来改变css样式,而又实现行为层和表示层的分离呢?
其实我们可以给元素节点对象赋予一个类属性,然后在css里设定这个类的值,这样就可以实现既可以操纵css又实现的分离。当我们要改变某个对象的外观时,我们可以给它增加class属性,而不是直接设定style.color这样的语句。color可以在css的类里面来设定。这样我们操纵的就只是一个class属性,而不是直接的css值。