Revert "Make sure that focusin/focusout bubbles in non-IE browsers." This was causing problems with the focusin event, see: #7340.
This reverts commit 88068f82c1
.
Conflicts:
src/event.js
test/unit/event.js
This commit is contained in:
parent
dc2e7317a9
commit
328a86f9a0
15
src/event.js
15
src/event.js
|
@ -8,7 +8,6 @@ var rnamespaces = /\.(.*)$/,
|
||||||
fcleanup = function( nm ) {
|
fcleanup = function( nm ) {
|
||||||
return nm.replace(rescape, "\\$&");
|
return nm.replace(rescape, "\\$&");
|
||||||
},
|
},
|
||||||
focusCounts = { focusin: 0, focusout: 0 },
|
|
||||||
eventKey = "events";
|
eventKey = "events";
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -880,21 +879,17 @@ if ( document.addEventListener ) {
|
||||||
jQuery.each({ focus: "focusin", blur: "focusout" }, function( orig, fix ) {
|
jQuery.each({ focus: "focusin", blur: "focusout" }, function( orig, fix ) {
|
||||||
jQuery.event.special[ fix ] = {
|
jQuery.event.special[ fix ] = {
|
||||||
setup: function() {
|
setup: function() {
|
||||||
if ( focusCounts[fix]++ === 0 ) {
|
this.addEventListener( orig, handler, true );
|
||||||
document.addEventListener( orig, handler, true );
|
},
|
||||||
}
|
teardown: function() {
|
||||||
},
|
this.removeEventListener( orig, handler, true );
|
||||||
teardown: function() {
|
|
||||||
if ( --focusCounts[fix] === 0 ) {
|
|
||||||
document.removeEventListener( orig, handler, true );
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
function handler( e ) {
|
function handler( e ) {
|
||||||
e = jQuery.event.fix( e );
|
e = jQuery.event.fix( e );
|
||||||
e.type = fix;
|
e.type = fix;
|
||||||
return jQuery.event.trigger( e, null, e.target );
|
return jQuery.event.handle.call( this, e );
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -1953,26 +1953,6 @@ test("window resize", function() {
|
||||||
ok( !jQuery._data(window, "__events__"), "Make sure all the events are gone." );
|
ok( !jQuery._data(window, "__events__"), "Make sure all the events are gone." );
|
||||||
});
|
});
|
||||||
|
|
||||||
test("focusin bubbles", function() {
|
|
||||||
//create an input and focusin on it
|
|
||||||
var input = jQuery("<input/>"), order = 0;
|
|
||||||
|
|
||||||
input.prependTo("body");
|
|
||||||
|
|
||||||
jQuery("body").bind("focusin.focusinBubblesTest",function(){
|
|
||||||
equals(1,order++,"focusin on the body second")
|
|
||||||
});
|
|
||||||
|
|
||||||
input.bind("focusin.focusinBubblesTest",function(){
|
|
||||||
equals(0,order++,"focusin on the element first")
|
|
||||||
});
|
|
||||||
|
|
||||||
input[0].focus();
|
|
||||||
input.remove();
|
|
||||||
|
|
||||||
jQuery("body").unbind("focusin.focusinBubblesTest");
|
|
||||||
});
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
test("jQuery(function($) {})", function() {
|
test("jQuery(function($) {})", function() {
|
||||||
stop();
|
stop();
|
||||||
|
|
Loading…
Reference in a new issue