Fixed typo in logic, also disabled function setters in this case to allow the functi...
authorjeresig <jeresig@gmail.com>
Wed, 13 Jan 2010 02:54:06 +0000 (21:54 -0500)
committerjeresig <jeresig@gmail.com>
Wed, 13 Jan 2010 02:54:06 +0000 (21:54 -0500)
Makefile
build.xml
src/core.js
src/event.js
test/unit/core.js

index fdb57bd..972cb4d 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -8,10 +8,10 @@ BASE_FILES = ${SRC_DIR}/core.js\
        ${SRC_DIR}/support.js\
        ${SRC_DIR}/data.js\
        ${SRC_DIR}/queue.js\
        ${SRC_DIR}/support.js\
        ${SRC_DIR}/data.js\
        ${SRC_DIR}/queue.js\
+       ${SRC_DIR}/attributes.js\
        ${SRC_DIR}/event.js\
        ${SRC_DIR}/selector.js\
        ${SRC_DIR}/traversing.js\
        ${SRC_DIR}/event.js\
        ${SRC_DIR}/selector.js\
        ${SRC_DIR}/traversing.js\
-       ${SRC_DIR}/attributes.js\
        ${SRC_DIR}/manipulation.js\
        ${SRC_DIR}/css.js\
        ${SRC_DIR}/ajax.js\
        ${SRC_DIR}/manipulation.js\
        ${SRC_DIR}/css.js\
        ${SRC_DIR}/ajax.js\
index 8e8fcf9..0aeb476 100644 (file)
--- a/build.xml
+++ b/build.xml
             <fileset file="src/support.js" />
             <fileset file="src/data.js" />
             <fileset file="src/queue.js" />
             <fileset file="src/support.js" />
             <fileset file="src/data.js" />
             <fileset file="src/queue.js" />
+            <fileset file="src/attributes.js" />
             <fileset file="src/event.js" />
             <fileset file="src/selector.js" />
             <fileset file="src/traversing.js" />
             <fileset file="src/event.js" />
             <fileset file="src/selector.js" />
             <fileset file="src/traversing.js" />
-            <fileset file="src/attributes.js" />
             <fileset file="src/manipulation.js" />
             <fileset file="src/css.js" />
             <fileset file="src/ajax.js" />
             <fileset file="src/manipulation.js" />
             <fileset file="src/css.js" />
             <fileset file="src/ajax.js" />
index 467895f..edd1089 100644 (file)
@@ -772,7 +772,7 @@ function access( elems, key, value, exec, fn, pass ) {
        // Setting one attribute
        if ( value !== undefined ) {
                // Optionally, function values get executed if exec is true
        // Setting one attribute
        if ( value !== undefined ) {
                // Optionally, function values get executed if exec is true
-               exec = exec && jQuery.isFunction(value);
+               exec = !pass && exec && jQuery.isFunction(value);
                
                for ( var i = 0; i < length; i++ ) {
                        fn( elems[i], key, exec ? value.call( elems[i], i, fn( elems[i], key ) ) : value, pass );
                
                for ( var i = 0; i < length; i++ ) {
                        fn( elems[i], key, exec ? value.call( elems[i], i, fn( elems[i], key ) ) : value, pass );
index ea1c14e..0234998 100644 (file)
@@ -919,8 +919,8 @@ jQuery.each( ("blur focus focusin focusout load resize scroll unload click dblcl
                return fn ? this.bind( name, fn ) : this.trigger( name );
        };
 
                return fn ? this.bind( name, fn ) : this.trigger( name );
        };
 
-       if ( jQuery.fnAttr ) {
-               jQuery.fnAttr[ name ] = true;
+       if ( jQuery.attrFn ) {
+               jQuery.attrFn[ name ] = true;
        }
 });
 
        }
 });
 
index 990926d..85b421d 100644 (file)
@@ -12,7 +12,7 @@ test("Basic requirements", function() {
 });
 
 test("jQuery()", function() {
 });
 
 test("jQuery()", function() {
-       expect(22);
+       expect(23);
 
        // Basic constructor's behavior
 
 
        // Basic constructor's behavior
 
@@ -63,9 +63,12 @@ test("jQuery()", function() {
 
        equals( jQuery(document.body).get(0), jQuery('body').get(0), "Test passing an html node to the factory" );
 
 
        equals( jQuery(document.body).get(0), jQuery('body').get(0), "Test passing an html node to the factory" );
 
+       var exec = false;
+
        var elem = jQuery("<div/>", {
                width: 10,
                css: { paddingLeft:1, paddingRight:1 },
        var elem = jQuery("<div/>", {
                width: 10,
                css: { paddingLeft:1, paddingRight:1 },
+               click: function(){ ok(exec, "Click executed."); },
                text: "test",
                "class": "test2",
                id: "test3"
                text: "test",
                "class": "test2",
                id: "test3"
@@ -78,6 +81,9 @@ test("jQuery()", function() {
        equals( elem[0].firstChild.nodeValue, "test", 'jQuery quick setter text');
        equals( elem[0].className, "test2", 'jQuery() quick setter class');
        equals( elem[0].id, "test3", 'jQuery() quick setter id');
        equals( elem[0].firstChild.nodeValue, "test", 'jQuery quick setter text');
        equals( elem[0].className, "test2", 'jQuery() quick setter class');
        equals( elem[0].id, "test3", 'jQuery() quick setter id');
+
+       exec = true;
+       elem.click();
 });
 
 test("selector state", function() {
 });
 
 test("selector state", function() {