当前位置:  开发笔记 > 编程语言 > 正文

滥用CSS类属性或有效的设计模式?

如何解决《滥用CSS类属性或有效的设计模式?》经验,为你挑选了2个好方法。

正如您可能已经知道的那样,在JQuery中选择具有特定CSS类的文档中的所有元素是很简单的,然后使用链接将常用事件处理程序分配给所选元素:

$(".toolWindow").click(toolWindow_click);
$(".toolWindow").keypress(toolWindow_keypress);

像往常一样,类"toolWindow"通常也在CSS中定义并与一些视觉样式相关联:

.toolWindow{
   color:blue;
   background-color:white;
}

class属性现在不仅要指示元素的外观(可视状态),还要指示行为.因此,我经常使用这种方法并将CSS类名称更多地定义为伪对象类,然后仅视觉化CSS类.换句话说,每个类都代表状态(CSS样式)和行为(事件).

在某些情况下,我甚至创建了没有视觉样式的类,只是使用它们作为向元素分配行为的便捷方式.

此外,jQuery LiveQuery插件(以及live()内置函数)通过​​自动将事件绑定到属于特定类的动态创建元素,使这种方法更加有效.

最近我主要使用类名来定义关联DOM元素的一组公共行为,并且稍后使用它们来定义视觉样式.

问题:这是一个可怕的滥用CSS"类"属性,如果是这样,为什么?

另一方面,也许这是进一步实现"关注点分离"和提高HTML/DHTML页面可维护性的完美有效方法?



1> BC...:

"类"实际上是文档数据的一部分(并且希望语义相关),而不是它的样式或设计.

这就是为什么两者都可以使用的原因.



2> ohnoes..:

    这是完全有效的方法.

    类属性没有定义行为 - JS通过CSS 选择器(谢谢jQuery)来实现它.

    类属性不定义视觉样式 - CSS 规则执行此操作.

推荐阅读
路人甲
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有