git.asbjorn.biz
/
jquery.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
62bd7e6
)
Fixed a problem with multi-namespaced events not targetting the correct functions...
author
John Resig
<jeresig@gmail.com>
Fri, 19 Dec 2008 06:49:44 +0000
(06:49 +0000)
committer
John Resig
<jeresig@gmail.com>
Fri, 19 Dec 2008 06:49:44 +0000
(06:49 +0000)
src/event.js
patch
|
blob
|
history
diff --git
a/src/event.js
b/src/event.js
index
92252a2
..
662fc48
100644
(file)
--- a/
src/event.js
+++ b/
src/event.js
@@
-116,7
+116,7
@@
jQuery.event = {
// Namespaced event handlers
var namespace = type.split(".");
type = namespace.shift();
// Namespaced event handlers
var namespace = type.split(".");
type = namespace.shift();
- namespace = RegExp(namespace.sort().join(".*\\.") + "(\\.|$)");
+ namespace = RegExp("(^|\\.)" + namespace.sort().join(".*\\.") + "(\\.|$)");
if ( events[type] ) {
// remove the given handler for the given type
if ( events[type] ) {
// remove the given handler for the given type
@@
-249,9
+249,11
@@
jQuery.event = {
// Namespaced event handlers
namespace = event.type.split(".");
event.type = namespace.shift();
// Namespaced event handlers
namespace = event.type.split(".");
event.type = namespace.shift();
- namespace = RegExp(namespace.sort().join(".*\\.") + "(\\.|$)");
+
// Cache this now, all = true means, any handler
// Cache this now, all = true means, any handler
- all = !namespace && !event.exclusive;
+ all = !namespace.length && !event.exclusive;
+
+ namespace = RegExp("(^|\\.)" + namespace.sort().join(".*\\.") + "(\\.|$)");
handlers = ( jQuery.data(this, "events") || {} )[event.type];
handlers = ( jQuery.data(this, "events") || {} )[event.type];