git.asbjorn.biz
/
jquery.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Added support for the new .andSelf() method. This method combines the previous two...
[jquery.git]
/
src
/
jquery
/
jquery.js
diff --git
a/src/jquery/jquery.js
b/src/jquery/jquery.js
index
338df7f
..
9e59f9d
100644
(file)
--- a/
src/jquery/jquery.js
+++ b/
src/jquery/jquery.js
@@
-228,8
+228,7
@@
jQuery.fn = jQuery.prototype = {
jQuery.unique( data ) : data );
},
jQuery.unique( data ) : data );
},
- clone: function(deep) {
- deep = deep != undefined ? deep : true;
+ clone: function() {
var $this = this.add(this.find("*"));
if (jQuery.browser.msie) {
// Need to remove events on the element and its descendants
var $this = this.add(this.find("*"));
if (jQuery.browser.msie) {
// Need to remove events on the element and its descendants
@@
-242,7
+241,7
@@
jQuery.fn = jQuery.prototype = {
// Do the clone
var r = this.pushStack( jQuery.map( this, function(a){
// Do the clone
var r = this.pushStack( jQuery.map( this, function(a){
- return a.cloneNode( deep );
+ return a.cloneNode( true );
}) );
if (jQuery.browser.msie) {
}) );
if (jQuery.browser.msie) {
@@
-257,15
+256,13
@@
jQuery.fn = jQuery.prototype = {
}
// copy form values over
}
// copy form values over
- if (deep) {
- var inputs = r.add(r.find('*')).filter('select,input[@type=checkbox]');
- $this.filter('select,input[@type=checkbox]').each(function(i) {
- if (this.selectedIndex)
- inputs[i].selectedIndex = this.selectedIndex;
- if (this.checked)
- inputs[i].checked = true;
- });
- }
+ var inputs = r.add(r.find('*')).filter('select,input[@type=checkbox]');
+ $this.filter('select,input[@type=checkbox]').each(function(i) {
+ if (this.selectedIndex)
+ inputs[i].selectedIndex = this.selectedIndex;
+ if (this.checked)
+ inputs[i].checked = true;
+ });
// Return the cloned set
return r;
// Return the cloned set
return r;
@@
-328,13
+325,17
@@
jQuery.fn = jQuery.prototype = {
return this.pushStack( Array.prototype.slice.apply( this, arguments ) );
},
return this.pushStack( Array.prototype.slice.apply( this, arguments ) );
},
- map: function(fn){
+ map: function(fn) {
return this.pushStack(jQuery.map( this, function(elem,i){
return fn.call( elem, i, elem );
}));
},
return this.pushStack(jQuery.map( this, function(elem,i){
return fn.call( elem, i, elem );
}));
},
+
+ andSelf: function() {
+ return this.add( this.prevObject );
+ },
- domManip: function(args, table, dir, fn){
+ domManip: function(args, table, dir, fn) {
var clone = this.length > 1, a;
return this.each(function(){
var clone = this.length > 1, a;
return this.each(function(){
@@
-636,6
+637,11
@@
jQuery.extend({
// Convert html string into DOM nodes
if ( typeof arg == "string" ) {
// Convert html string into DOM nodes
if ( typeof arg == "string" ) {
+ // Fix "XHTML"-style tags in all browsers
+ arg = arg.replace(/(<(\w+)[^>]*?)\/>/g, function(m, all, tag){
+ return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area)$/i)? m : all+"></"+tag+">";
+ });
+
// Trim whitespace, otherwise indexOf won't work as expected
var s = jQuery.trim(arg).toLowerCase(), div = doc.createElement("div"), tb = [];
// Trim whitespace, otherwise indexOf won't work as expected
var s = jQuery.trim(arg).toLowerCase(), div = doc.createElement("div"), tb = [];
@@
-731,9
+737,15
@@
jQuery.extend({
// IE elem.getAttribute passes even for style
else if ( elem.tagName ) {
// IE elem.getAttribute passes even for style
else if ( elem.tagName ) {
- if ( value != undefined ) elem.setAttribute( name, value );
+ if ( value != undefined ) {
+ if ( name == "type" && jQuery.nodeName(elem,"input") && elem.parentNode )
+ throw "type property can't be changed";
+ elem.setAttribute( name, value );
+ }
+
if ( jQuery.browser.msie && /href|src/.test(name) && !jQuery.isXMLDoc(elem) )
return elem.getAttribute( name, 2 );
if ( jQuery.browser.msie && /href|src/.test(name) && !jQuery.isXMLDoc(elem) )
return elem.getAttribute( name, 2 );
+
return elem.getAttribute( name );
// elem is actually elem.style ... set the style
return elem.getAttribute( name );
// elem is actually elem.style ... set the style
@@
-955,13
+967,6
@@
jQuery.each( {
};
});
};
});
-// DEPRECATED
-jQuery.each( [ "eq", "lt", "gt", "contains" ], function(i,n){
- jQuery.fn[ n ] = function(num,fn) {
- return this.filter( ":" + n + "(" + num + ")", fn );
- };
-});
-
jQuery.each( [ "height", "width" ], function(i,n){
jQuery.fn[ n ] = function(h) {
return h == undefined ?
jQuery.each( [ "height", "width" ], function(i,n){
jQuery.fn[ n ] = function(h) {
return h == undefined ?