Home >Web Front-end >JS Tutorial >Prototype usage guide selector.js_prototype

Prototype usage guide selector.js_prototype

WBOY
WBOYOriginal
2016-05-16 19:21:101187browse

Selector是利用css selector来匹配选择页面元素的,所以要理解Selector首先应该对css selector有所理解,下面是css2 selector的语法,当然很多浏览器只是支持其中的一部分,Prototype 中的Selector主要支持tag选择器、class选择器和id选择器,还有属性(attribute)选择器,基本上包含我们平时所用的所有类型

The following table summarizes CSS2 selector syntax, 详细的可以看http://www.w3.org/TR/REC-CSS2/selector.html:

Pattern Meaning Described in section
* Matches any element. Universal selector
E Matches any E element (i.e., an element of type E). Type selectors
E F Matches any F element that is a descendant of an E element. Descendant selectors
E > F Matches any F element that is a child of an element E. Child selectors
E:first-child Matches element E when E is the first child of its parent. The :first-child pseudo-class
E:link E:visited Matches element E if E is the source anchor of a hyperlink of which the target is not yet visited (:link) or already visited (:visited). The link pseudo-classes
E:active E:hover E:focus Matches E during certain user actions. The dynamic pseudo-classes
E:lang(c) Matches element of type E if it is in (human) language c (the document language specifies how language is determined). The :lang() pseudo-class
E + F Matches any F element immediately preceded by an element E. Adjacent selectors
E[foo] Matches any E element with the “foo” attribute set (whatever the value). Attribute selectors
E[foo=”warning”] Matches any E element whose “foo” attribute value is exactly equal to “warning”. Attribute selectors
E[foo~=”warning”] Matches any E element whose “foo” attribute value is a list of space-separated values, one of which is exactly equal to “warning”. Attribute selectors
E[lang|=”en”] Matches any E element whose “lang” attribute has a hyphen-separated list of values beginning (from the left) with “en”. Attribute selectors
DIV.warning HTML only. The same as DIV[class~=”warning”]. Class selectors
E#myid Matches any E element ID equal to “myid”. ID selectors

Selector contains Selector objects and classes,

Selector object has the following two methods:

match(element): Whether the element matches this selector has been introduced in Element
findElements(parentNode): List of all descendant elements in parentNode that match this selector

The usage method is also very simple: var s=new Selector(expression); s.match(element); s.findElements($(element)), where expression can be as follows" div", "#id", ".class", "div#id", "div[attribute]", "div[attribute=fff]", "div[attribute!=sdf]"

Selector also has several static methods, they are:

matchElements(elements, expression): Returns a list of elements in elements that match expression
findElement(elements, expression, index): Returns elements The element with index index in the list of elements matching expression
findChildElements(element, expressions): Find the descendant elements of element A list of elements matching expressions, where expressions is an expression array, where expression supports the form of "div li.#id"

$$ method: Just simply call return Selector.findChildElements(document, $A(arguments))

Although Selector has so many methods, Most of them are called internally, and we rarely use them because we have a convenient method $$, which is enough for most situations.
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn