* @type String
* @cat DOM
*/
+
+ /**
+ * Set the text contents of all matched elements. This has the same
+ * effect as calling .html() with your specified string.
+ *
+ * @example $("p").text("Some new text.");
+ * @before <p>Test Paragraph.</p>
+ * @result <p>Some new text.</p>
+ *
+ * @param String val The text value to set the contents of the element to.
+ *
+ * @name text
+ * @type String
+ * @cat DOM
+ */
text: function(e) {
+ // A surprisingly high number of people expect the
+ // .text() method to do this, so lets do it!
+ if ( typeof e == "string" )
+ return this.html( e );
+
e = e || this;
var t = "";
for ( var j = 0; j < e.length; j++ ) {
"^=": "z && !z.indexOf(m[4])",
"$=": "z && z.substr(z.length - m[4].length,m[4].length)==m[4]",
"*=": "z && z.indexOf(m[4])>=0",
- "": "z"
+ "": "z",
+ _resort: function(m){
+ return ["", m[1], m[3], m[2], m[5]];
+ },
+ _prefix: "z=jQuery.attr(a,m[3]);"
},
"[": "jQuery.find(m[2],a).length"
},
- /**
+ /**
* All elements on a specified axis.
*
* @private
* @name $.sibling
* @type Array
* @param Element elem The element to find all the siblings of (including itself).
- * @cat DOM/Traversing
- */
+ * @cat DOM/Traversing
+ */
sibling: function( n, elem ) {
var r = [];
value: "value",
disabled: "disabled",
checked: "checked",
- readonly: "readOnly"
+ readonly: "readOnly",
+ selected: "selected"
};
// IE actually uses filters for opacity ... elem is actually elem.style
if ( m ) {
// Re-organize the first match
- if ( !i )
- m = ["",m[1], m[3], m[2], m[5]];
+ if ( jQuery.expr[ m[1] ]._resort )
+ m = jQuery.expr[ m[1] ]._resort( m );
// Remove what we just matched
t = t.replace( re, "" );
// Build a custom macro to enclose it
eval("f = function(a,i){" +
- ( m[1] == "@" ? "z=jQuery.attr(a,m[3]);" : "" ) +
+ ( jQuery.expr[ m[1] ]._prefix || "" ) +
"return " + f + "}");
// Execute it against the current filter
/**
* Get the html contents of the first matched element.
+ * This property is not available on XML documents.
*
* @example $("div").html();
* @before <div><input/></div>
/**
* Set the html contents of every matched element.
+ * This property is not available on XML documents.
*
* @example $("div").html("<b>new stuff</b>");
* @before <div><input/></div>