当css类已经存在时,Class属性作为jquery选择器

时间:2011-11-16 15:45:10

标签: jquery

我理解在jquery中通过class属性进行选择是选择元素的最高效方法之一。我们在所有元素上应用class属性来表示CSS样式。我想使用jquery类选择器选择这些元素的子集。

那么,我应该在元素中应用多种样式 - 一种用于表示css样式,另一种用于jquery选择目的?

4 个答案:

答案 0 :(得分:1)

您可以使用多个类来描述元素的不同“信息”。例如,Wordpress使用“body”元素执行此操作,它会分配代表浏览器类型等的类。

另一种方法是将类/ id分配给要选择的元素的父级,以便您可以这样做:

jQuery('#parent_of_group').find('.class_name');

答案 1 :(得分:1)

class属性值选择元素肯定是“选择元素的最佳方式之一”。相反:相比之下jQuery的Sizzle is very slow,特别是当涉及类简单选择器时。

相反,选择元素的一种更有效的方法是ID。如果只有一个相关元素,则应该执行此操作,因为ID在文档中必须是唯一的。如果您使用现在无处不在的document.getElementById()方法,并且只在绝对必要时创建了一个jQuery对象,那么它可能是最好的。

但是你应该首先检查是否必要来选择所有元素。 DOM API有几个其他更兼容的入口点来引用元素对象,其中包括this(在事件处理程序属性值和事件侦听器中),event(在事件处理程序属性值中),和element collections and node listsEvent bubbling现在也无处不在,尽管not all events bubble in all implementations

答案 2 :(得分:0)

元素可以有多个类

class="firstClass secondClass thirdClass"

..如果那就是你要问的那个

答案 3 :(得分:0)

因此,如果我理解正确,您想要选择具有特定类(class1)的元素子集,再次由另一个类(class2)过滤?

jQuery('.class1.class2');
// or
jQuery('.class1').filter('.class2');