David Serduke [Sun, 16 Dec 2007 10:08:53 +0000 (10:08 +0000)]
Added code so an iframe in IE won't count on doScroll to determine if the dom is ready. We will probably have to do more investigation on a better (and consistant) method for inside an iframe in IE.
Brandon Aaron [Sat, 15 Dec 2007 05:55:33 +0000 (05:55 +0000)]
new special events api, ready is now a first class event that you can use bind, unbind or the ready helper, two new events: mouseenter and mouseleave, the hover helper method now uses mouseenter and mouseleave, bind and unbind can now take a space sperated list of event types
David Serduke [Thu, 13 Dec 2007 22:24:59 +0000 (22:24 +0000)]
Fixed #1854 by using wizzud's suggestion. The only real difference is the code is only called when there is more than a single selector. So there should be no speed decrease in the current working cases. Only additional functionality for cases that used to fail.
Brandon Aaron [Thu, 13 Dec 2007 03:46:48 +0000 (03:46 +0000)]
Getting the width and height of the document now returns the correct value in all browsers. It even works around the scrollWidth == offsetWidth bug in Firefox thanks to wizzud.
David Serduke [Mon, 10 Dec 2007 19:04:59 +0000 (19:04 +0000)]
Fixed #1959 by postponing ALL script evaluations till the html insertion is done. Before the code would immediately execute any scripts that weren't in subelements if no subelements prior had scripts in them (i.e. once any script was postponed they all were). This could cause inconsistent behavior. Since, at this time, we have to postpone some scripts it makes more sense to postpone them all.
Brandon Aaron [Sat, 8 Dec 2007 23:03:10 +0000 (23:03 +0000)]
Fixed clone so that it now properly copies changes to the innerHTML in IE. Unfortunately, IE stores some modifications to some attributes only as a property and they are still not copied properly. This is documented in ticket #1836.
David Serduke [Thu, 6 Dec 2007 23:23:10 +0000 (23:23 +0000)]
Added ajax error messages in the unit test suite because Safari was sometimes tossing errors that were being ignored and that caused a freeze in the test suite.
David Serduke [Wed, 5 Dec 2007 23:03:58 +0000 (23:03 +0000)]
Safari sometimes stops in the test suite on the ajax section when I run the whole suite and its running on my local machine. I went ahead and put better error detection in for the test that is the culprit so it will keep going. It seems to do fine if I run it from a server. It gives xml.status as 0. Maybe this is the reason http://www.pearweb.com/javascript/XMLHttpRequest.html
David Serduke [Wed, 5 Dec 2007 21:23:07 +0000 (21:23 +0000)]
A partial rollback of the refactoring done in [4032]. It was causing a 4-6% speed decrease on certain hierarchy selectors ( > + and ~ ) since it did an extra .toUpperCase() which wasn't required.
The part left in was moving one of the .toUpperCase() calls to the var nodeName instead of having it in the loop. This appears to be giving a speed boost of a couple percent for those same hierarchy selectors.
David Serduke [Wed, 5 Dec 2007 17:33:49 +0000 (17:33 +0000)]
Fixed the build/speed testing application to work with current versions of jQuery. The main changes were implementing :has() where necessary to replace functionality that no longer existed and to use noConflict() so the libraries wouldn't have to be modified for the speed testing.
So now the file jquery-basis.js will be tested against the jquery.js in the /dist directory. Version 1.2.1 is currently in jquery-basis.js.
David Serduke [Wed, 5 Dec 2007 08:00:30 +0000 (08:00 +0000)]
Refactored jQuery.find() such that jQuery.nodeName() is used to test the node names like .filter() and other functions do. This puts in place possible fixes for tickets like #1991 where XML and HTML differ in case-sensitivity.
David Serduke [Wed, 5 Dec 2007 05:01:46 +0000 (05:01 +0000)]
Fixed #1419 where IE failed with .text() on an XML node. This is part of a series of tickets including #1264 where the context of the DOM manipulation was a problem in xml and iframe documents.
David Serduke [Wed, 5 Dec 2007 00:26:13 +0000 (00:26 +0000)]
Fixed #1264. If you read the bug there were many proposed changes. As it turned out most of them had already been implemented. The last ones necessary were in .domManip() with when a <table> was 'this' and for .text(). Adding these last changes seems to make dom and text manipulation in IE frames possible. Unit test cases were added as well.
In addition "submit.gif" was removed from the test suite index.html since it didn't exist.
David Serduke [Tue, 4 Dec 2007 18:15:27 +0000 (18:15 +0000)]
Fixed #1438 where a filter could be set in IE but not have opacity in it. The JS error was fixed by checking to make sure 'opacity=' is in the filter before seeing what its value is.
David Serduke [Tue, 4 Dec 2007 01:51:07 +0000 (01:51 +0000)]
There was a disabled test in the ajax test suite which said there were too many simultainous requests. I re-enabled it when I found a bug that might have been the cause of the failure instead and it seems to work fine. We can disable it again if that ends up not being the case.
David Serduke [Mon, 3 Dec 2007 21:41:10 +0000 (21:41 +0000)]
Fixed [1993] although it actually wasn't a bug in the core but rather a misunderstanding of how the extra function was supposed to work in jQuery.event.trigger(). That said, it seems more useful and robust for the code to work the way the ticket author thought it should work so this change was made.
Now, if anything is returned from the extra function it will overwrite the return value of the event handlers. This should only effect custom events unless someone had an extra function that returned a value other than false which would have been ignored before.
David Serduke [Fri, 30 Nov 2007 21:36:49 +0000 (21:36 +0000)]
Added enchancement for #1994 by adding two parameters to .stop() which give additional functionality. The first parameter clearQueue will clear the queue on the necessary DOM elements so all animation will stop. The second parameter will cause the currently playing animation to immediately complete including reseting original styles on show and hide and calling the callback function. If no parameters are passed it will work as it always did.
While adding unit testing I noticed the stop() unit test wasn't working correctly because the element was hidden so I fixed it and added more unit tests around the new functionality. I also added a cursor:pointer to the css (because for a long time I didn't know they were clickable).
David Serduke [Thu, 29 Nov 2007 19:07:20 +0000 (19:07 +0000)]
Fixed #1557, although it doesn't appear to be just an FF3 problem. In this case, $.getJSON() wasn't working from a remote host. I went ahead and added a unit test then added the s.dataType == "json" test for a remote <script> load. The said that json was allowed but the dataType check was missing. This appears to have fixed the bug across all browsers.
David Serduke [Wed, 28 Nov 2007 23:13:59 +0000 (23:13 +0000)]
Fixed #1070 by converting all setAttribute() values to a string which is what all browsers but IE did. This will bring IE in line with the others and fix the bug.
David Serduke [Wed, 28 Nov 2007 01:01:49 +0000 (01:01 +0000)]
Fixed #1599 as Brandon suggested to ignore negative values to width and height css. The fix itself is slightly different as it was moved to .css() instead of staying in .attr() like in his patch. I decided there was less chance of incorrect behavior (like if someone had an XML file with a width attribute that could be negative). Also took out some unneeded white space while I was in there.
David Serduke [Tue, 27 Nov 2007 23:58:07 +0000 (23:58 +0000)]
Fixed #1942 but running jQuery.css() before jQuery.curCSS(). This way when the property is width or height it gets the values through calculation instead of just css first. This appears to fix the problem in Opera without hurting any of the other browsers.
David Serduke [Tue, 27 Nov 2007 19:20:36 +0000 (19:20 +0000)]
Fixed #1970 by returning true instead of false when the mouse moves over a sub-element. The side effect is the event will not stop default behavior and will propagate which it didn't used to. I could find no compelling reason to stop those things from happening.
David Serduke [Sun, 18 Nov 2007 00:46:58 +0000 (00:46 +0000)]
Slightly altered a test that was causing IE7 in some cases to hard crash. The test was setting .html() to many divs, some of which were inside other divs effectly deleting them from the DOM. I suspect this caused some instability and may only have been an IE7 with IEDevBar issue. The test still correctly tests the functionality of that unit test.
David Serduke [Sat, 17 Nov 2007 04:36:50 +0000 (04:36 +0000)]
Changed core.js from CRLF to LF eol style to match the rest of the source files. This was the only change for this changeset. To see it try: 'svn diff -x --ignore-eol-style -r 3841:3842' and there will be no diffs. (actual revision numbers are an educated guess)
David Serduke [Sat, 17 Nov 2007 04:25:22 +0000 (04:25 +0000)]
Fix #1907 where the never-ending loop prevention used a coersion comparison which sometimes dropped values incorrectly. Also fixed a bug where on deep copies the target copied over itself (i = 2 addition). Last made code handle the case when a property might have a string in it that should be overwritten by an object.
David Serduke [Fri, 16 Nov 2007 23:39:23 +0000 (23:39 +0000)]
Fixed #1095 bug where radio buttons became unchecked during show(). Also added unit test and had to fix a selector test that was broken by the new testing div in test/index.html. Last made some whitespace changes.
Brandon Aaron [Sat, 6 Oct 2007 17:04:20 +0000 (17:04 +0000)]
Fixes memory leaks relating to events in IE with page unload and with jQuery methods remove, html and empty (#1610, #1618, #1697 and #1731). Also re-worked variable names to be more consistent with the core.
John Resig [Thu, 27 Sep 2007 15:23:07 +0000 (15:23 +0000)]
Converted jQuery to use the new DOM Ready technique (by checking scroll). A single setTimeout loop is used for both IE and Safari now. Fixex bugs #1320 and #1561.