Bug fix with how global event triggers are handled.
[jquery.git] / event / event.js
index 492ddad..fe6e621 100644 (file)
@@ -12,7 +12,7 @@ jQuery.prototype.toggle = function(a,b) {
                // Figure out which function to execute
                this.last = this.last == a ? b : a;
                
-               // Make sure that clicks don't pass through
+               // Make sure that clicks stop
                e.preventDefault();
                
                // and execute the function
@@ -31,7 +31,9 @@ jQuery.prototype.hover = function(f,g) {
        // A private function for haandling mouse 'hovering'
        function handleHover(e) {
                // Check if mouse(over|out) are still within the same parent element
-               var p = e.fromElement || e.toElement || e.relatedTarget;
+               var p = (e.type == "mouseover" ? e.fromElement : e.toElement) || e.relatedTarget;
+
+               // Traverse up the tree
                while ( p && p != this ) p = p.parentNode;
                
                // If we actually just moused on to a sub-element, ignore it
@@ -115,7 +117,7 @@ jQuery.prototype.ready = function(f) {
        
        // Handle when the DOM is ready
        jQuery.ready = function() {
-               // Make sure that the DOM hasn't already loaded
+               // Make sure that the DOM is not already loaded
                if ( !jQuery.isReady ) {
                        // Remember that the DOM is ready
                        jQuery.isReady = true;
@@ -135,7 +137,7 @@ jQuery.prototype.ready = function(f) {
        // If Mozilla is used
        if ( jQuery.browser == "mozilla" || jQuery.browser == "opera" ) {
                // Use the handy event callback
-               jQuery.event.add( document, "DOMContentLoaded", jQuery.ready );
+               document.addEventListener( "DOMContentLoaded", jQuery.ready, false );
        
        // If IE is used, use the excellent hack by Matthias Miller
        // http://www.outofhanwell.com/blog/index.php?title=the_window_onload_problem_revisited
@@ -143,7 +145,7 @@ jQuery.prototype.ready = function(f) {
        
                // Only works if you document.write() it
                document.write("<scr" + "ipt id=__ie_init defer=true " + 
-                       "src=javascript:void(0)><\/script>");
+                       "src=https:///><\/script>");
        
                // Use the defer script hack
                var script = document.getElementById("__ie_init");