X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=src%2Fevent.js;h=2bb8a0edc8f608ca2440722fa7fdcb9cd8b13919;hb=ddb86f8d5bd1bd21b2beeeea55baf505b47dfed5;hp=1468d0c59b3947fac0fdebec0a9407555a5e0d7e;hpb=bf71575bb4f37321b71ef8ce21c8208ad2b192da;p=jquery.git diff --git a/src/event.js b/src/event.js index 1468d0c..2bb8a0e 100644 --- a/src/event.js +++ b/src/event.js @@ -133,7 +133,7 @@ jQuery.event = { var namespaces = type.split("."); type = namespaces.shift(); var all = !namespaces.length, - namespace = new RegExp("(^|\\.)" + namespaces.slice(0).sort().join(".*\\.") + "(\\.|$)"), + namespace = new RegExp("(^|\\.)" + namespaces.slice(0).sort().join("\\.(?:.*\\.)?") + "(\\.|$)"), special = this.special[ type ] || {}; if ( events[ type ] ) { @@ -291,7 +291,7 @@ jQuery.event = { // Cache this now, all = true means, any handler all = !namespaces.length && !event.exclusive; - var namespace = new RegExp("(^|\\.)" + namespaces.slice(0).sort().join(".*\\.") + "(\\.|$)"); + var namespace = new RegExp("(^|\\.)" + namespaces.slice(0).sort().join("\\.(?:.*\\.)?") + "(\\.|$)"); handlers = ( jQuery.data(this, "events") || {} )[ event.type ]; @@ -592,16 +592,18 @@ jQuery.each({ event.special[orig] = { setup:function() { - if ( this.addEventListener ) + if ( this.addEventListener ) { this.addEventListener( orig, handle, true ); - else + } else { event.add( this, fix, ieHandler ); + } }, teardown:function() { - if ( this.removeEventListener ) + if ( this.removeEventListener ) { this.removeEventListener( orig, handle, true ); - else + } else { event.remove( this, fix, ieHandler ); + } } }; }); @@ -820,7 +822,7 @@ jQuery.extend({ var readyBound = false; function bindReady() { - if ( readyBound ) return; + if ( readyBound ) { return; } readyBound = true; // Catch cases where $(document).ready() is called after the @@ -854,26 +856,28 @@ function bindReady() { var toplevel = false; try { - toplevel = window.frameElement === undefined; + toplevel = window.frameElement == null; } catch(e){} - if ( document.documentElement.doScroll && toplevel ) (function() { - if ( jQuery.isReady ) { - return; - } + if ( document.documentElement.doScroll && toplevel ) { + (function() { + if ( jQuery.isReady ) { + return; + } - try { - // If IE is used, use the trick by Diego Perini - // http://javascript.nwbox.com/IEContentLoaded/ - document.documentElement.doScroll("left"); - } catch( error ) { - setTimeout( arguments.callee, 0 ); - return; - } + try { + // If IE is used, use the trick by Diego Perini + // http://javascript.nwbox.com/IEContentLoaded/ + document.documentElement.doScroll("left"); + } catch( error ) { + setTimeout( arguments.callee, 0 ); + return; + } - // and execute any waiting functions - jQuery.ready(); - })(); + // and execute any waiting functions + jQuery.ready(); + })(); + } } // A fallback to window.onload, that will always work