Commit Graph

283 Commits

Author SHA1 Message Date
Colin Snover
b14f02899e Ensure that buildFragment clones elements properly in all browsers. Fixes #3879, #6655. Also improves form element clone tests and fixes bugs in $.fn.clone exposed by these new test cases related to the values of checkboxes and radio buttons in IE. 2011-01-09 18:38:44 -06:00
Colin Snover
e2941d5a98 Update unit tests with a leak detection mechanism for the various jQuery globals and fix all leaks in the tests. 2011-01-09 15:58:47 -06:00
Dave Methvin
5fd21fc02b Don't cache non-html strings in buildFragment to avoid possible collision with the names of Object methods like toString. Also makes the unit tests 0.5% to 8% faster. Fixes #6779. 2010-12-27 13:43:52 -06:00
Colin Snover
82ac384b49 Don't use for-in loops on Arrays. Fixes #7817. Thanks to dmethvin.
Conflicts:
	src/manipulation.js
2010-12-22 18:32:33 -06:00
Colin Snover
445fdf720c Remove code for ticket #7717 which has been marked WONTFIX to match existing $.data functionality and to prevent infinite loops caused by circular references. 2010-12-22 14:43:17 -06:00
Dave Methvin
4424bda377 Use a for loop rather than for/in loop when copying events, so that code will work with an augmented Array.prototype. Fixes 7809. 2010-12-20 22:23:59 -05:00
Colin Snover
faefbb1ad0 Fix #7717 and #7165. Thanks to dmethvin and iliakan for their help fixing these issues. 2010-12-19 15:33:53 -06:00
Colin Snover
1a3fd3329d Speed up & compatibility improvements for new clone mechanism in IE. 2010-12-12 19:23:22 -06:00
Colin Snover
8b33e23ea0 Return test comments to ASCII space 2010-12-12 13:37:00 -06:00
Colin Snover
4fae75d575 Merge branch 'bug5566' into csnover-bug5566. Fixes #4386, #5566, #6997.
Conflicts:
	src/manipulation.js
	test/unit/manipulation.js
2010-12-12 02:39:06 -06:00
Colin Snover
7481a3645a Fix the clone method to be a little less insane in IE, which fixes the new event-cloning clone() as well as probably a bunch of IE-related clone bugs. 2010-12-12 02:20:31 -06:00
jeresig
29616e60c8 Backing out cec68e2b00, was causing serialize tests to fail. Un-fixes #5566. 2010-12-09 13:27:52 -05:00
jeresig
cec68e2b00 Merge branch 'bug5566' of https://github.com/csnover/jquery into csnover-bug5566 2010-12-09 12:44:30 -05:00
Colin Snover
e4900df838 Clone fragments in domManip using jQuery.clone instead of DocumentFragment.cloneNode in order to carry over event data. Fixes #5566, #6997. 2010-12-06 19:37:16 -06:00
Anton M
ab2a70e6cf Make sure IE clones body elements correctly. Fixes 4386. 2010-11-21 01:58:46 +01:00
jeresig
51283d9643 Added some more tests to make sure that replaceWith is working correctly. Follow-up to the comment on 2a6de9ab66. 2010-10-09 11:41:58 -04:00
John Resig
0368606c08 Make sure that the contents of the element is still in place when html(Function) is called. Fixes #6733. 2010-09-28 09:50:44 -07:00
jeresig
88fc523c59 Adjust manipulation test to handle whitespace RegExp issue in older WebKits. Fixes #7082. 2010-09-27 10:28:35 -04:00
John Resig
43fbe3b33a Handle two more cases where comments were missing in the test case, in Blackberry 4.6. 2010-08-27 14:16:27 -04:00
John Resig
9ce1d09a0a Blackberry 4.6 doesn't maintain comment nodes in the DOM, ignore them in our test cases. 2010-08-26 15:36:44 -04:00
John Resig
1e9d6e1255 Fixed mistake with tweaked iframe manipulation test. 2010-08-26 15:26:30 -04:00
John Resig
c5382ad7c1 Tweak some more jQuery set results in the manipulation tests. Also fixed the order of the expected test results. 2010-08-26 15:21:01 -04:00
John Resig
c0fe98f028 Tweak more element orders in the manipulation tests. Also differentiate between iframe test failing and the inability to access iframe internals (as in the case of Blackberry). 2010-08-26 14:57:23 -04:00
John Resig
3b76b58815 Tweaked manipulation test to ignore order of elements from selector (not important to the test). 2010-08-26 14:37:58 -04:00
jzaefferer
6f031c1015 Replace usage of the removed global reset() method with QUnit.reset(). 2010-07-28 17:19:01 +02:00
jeresig
145f2f0459 I take that back! It was a bug, but the cache had to be triggered and a collection of cached nodes had to be passed in (an odd case to be sure). Fixes #6227. 2010-03-05 00:14:47 -05:00
jeresig
2c08004f6d Attempted to fix #6227, not entirely sure if it's a problem as I'm having a hard time reproducing it. Regardless, the change is harmless and potentially even speeds up appendTo, etc. slightly. 2010-03-05 00:07:57 -05:00
jeresig
053af95294 Adapt the nbsp entity test for Opera (output isn't as important as the fact that it's getting converted. 2010-02-13 07:05:39 -05:00
jeresig
c1ac9fdf45 Don't inject style elements using innerHTML as they will go away in IE. Fixes #5977. 2010-02-13 03:30:45 -05:00
jeresig
14e1200d59 Added some tests to test repeated injected of scripts. Was fixed when fixing #5094. 2010-02-13 03:25:27 -05:00
jeresig
99e7560808 Make sure that we don't try to use a detached node (that was in a fragment) as a fragment in IE. Fixes #5829. 2010-02-13 03:14:00 -05:00
jeresig
726fda08be Make sure the fragment isn't used if it's not the same set we're working with. Fixes #6068. 2010-02-13 02:49:04 -05:00
jeresig
d743899971 Make sure that &#...; entities are encoded properly. Fixes #6042. 2010-02-05 19:58:08 -05:00
Neeraj Singh
532bec4c69 Adding in some more replaceWith tests for #5917. 2010-02-01 21:53:31 -05:00
Noah Sloan
8660ea1ab6 Only detach the incoming elements to replaceWith if they're DOM nodes. Fixes #5986. 2010-02-01 21:48:05 -05:00
jeresig
f95147f465 Fix for problem in IE 8 where deserialized (then reserialized) form markup was getting malformed. Thanks IE. Fixes #5998. 2010-02-01 21:26:47 -05:00
jeresig
0b3165fd23 Make sure that the correct context is being passed in for replaceWith(fn). Fixes #5798. 2010-01-25 19:22:28 -05:00
jeresig
9f17e70ae9 Make work wrapInner(fn) work consistently. Fixes #5799. 2010-01-25 19:16:23 -05:00
Michael Monteleone
bed759c95c Make sure that checked state is cloned properly. Based upon the patch by Michael, required better test cases and in doing so found more edge cases. Introduced a new check into jQuery.support as a result. Fixes #5929. 2010-01-25 18:43:33 -05:00
jeresig
e01ff6cda1 Cleaned up divs that should've been removed after a test run. 2010-01-25 15:18:51 -05:00
John Resig
6a3d0996ed Make sure that XHTML-style HTML is purified in .html(). Fixes #5845. 2010-01-24 21:37:05 -05:00
jeresig
f06e0e5575 Expose cleanData, make sure that all bound event handlers are properly cleaned up after html/empty/remove. Fixes #5856 and #5906. 2010-01-23 21:20:19 -05:00
Yehuda Katz
37b909de69 wrapAll(Function) doesn't actually make sense. That's why I couldn't figure out how to test it! 2010-01-14 00:45:29 -05:00
jeresig
d431519d61 We only care that some of the html return value is escaped, not necessarily all of it (as is the case in Safari 3.x). 2010-01-13 15:23:05 -05:00
jeresig
2c8af19a06 Some more touching up of the replaceWith tests. 2010-01-11 23:32:11 -05:00
jeresig
31252b1e47 Did some reorganizing of the recently added replaceWith tests. 2010-01-11 17:29:48 -05:00
jeresig
23d600c66d Make sure that wrapInner works on elements that have no contents. Fixes #3552. 2010-01-11 16:31:31 -05:00
jeresig
3e9ef6f5c0 Final pass at fixing #5785. Need to make sure that inner-nodes are detached before the remove() occurs (and it should still occur, the nodes are being obliterated. 2010-01-11 16:25:01 -05:00
jeresig
cb4880ee83 Made some additional tests for #5785. 2010-01-11 16:08:39 -05:00
jeresig
36a98b95c2 Make sure we use detach instead of remove in replaceWith. Fixes #5785. 2010-01-11 15:57:45 -05:00
jeresig
22ff8e9ea4 Added manipulation tests for setter function args. 2010-01-07 13:34:16 -05:00
jeresig
cc1a34852f Added some .text(Function) tests. 2010-01-07 11:51:48 -05:00
jeresig
12e8f07e34 Moved the val() tests from manipulation into attributes. 2010-01-07 09:55:15 -05:00
jeresig
1e64d58183 Make sure that the correct value is being pulled from checkboxes in Webkit. Fixes #5699. 2009-12-22 02:00:46 -05:00
jeresig
f298cce100 Made sure that the .val() logic for setting radios and checkboxes was correct. Fixes #5698. 2009-12-22 01:18:49 -05:00
jeresig
261b7efb5f Fixed the issue where getting an empty value was impossible. Fixes #5697. 2009-12-22 00:24:23 -05:00
Yehuda Katz
1a4d1904ae Fix up whitespace and a couple of glitches. 2009-12-09 21:17:10 -08:00
Yehuda Katz
da51cd0e43 Add function values to addClass, removeClass, toggleClass, text, and removeAttr 2009-12-09 20:57:53 -08:00
John Resig
4b70f006f5 Made .clone(true) also copy over element data. Fixes #4191. 2009-12-09 13:28:58 -08:00
John Resig
f5b649fafb Make sure that events are cloned for wrap, fixes #2977. 2009-12-08 11:21:24 -08:00
John Resig
2092789155 Added in support for injecting area elements into map elements. Fixes #4484. 2009-12-06 17:26:39 -08:00
Dave Methvin
628e1564c4 Fix for #4011, crash when two text nodes are appended in IE. 2009-12-06 10:31:57 +08:00
jeresig
2a6de9ab66 Make sure that the previous element is removed from the page before the next is inserted, in replaceWith. Using a variation of the patch by snaury. Fixes #2697. 2009-12-05 15:30:36 -05:00
jeresig
bfc15b57ef Removed debug statements from manipulation tests, was causing errors in IE. 2009-12-02 15:14:48 -05:00
Yehuda Katz
e277e6ed21 Adding a test that a new option can be selected with val(N) 2009-12-01 14:11:32 -08:00
jeresig
1a26e41917 Use .add() to merge two test groups together for .unwrap(). 2009-11-30 14:39:34 -05:00
jeresig
c7407bd4fc Fixed wrap test that was looking for comment values from .text(). 2009-11-30 13:46:14 -05:00
John Resig
b30af34f28 Added support for .text() on text nodes. Fixes #5525. 2009-11-17 14:52:08 -05:00
John Resig
7c4144fab3 Fixed the case where HTML that contained entities was being inserted as text strings instead of HTML. Thanks to dmethvin for the test case! Fixes #5483. 2009-11-11 14:23:56 -05:00
John Resig
4bda398e6a Switched from using QUnit's isObj/isSet to the more robust same method. 2009-09-29 19:49:43 +00:00
John Resig
69e6e53555 Adding in .unwrap() support, thanks to Ben Alman! Fixes #5191. 2009-09-25 21:41:21 +00:00
John Resig
67d445a703 A follow-up to [6578] (which stopped adding expandos to elements that didn't have data). That broke jQuery.unique() (so we're now using the unique from Sizzle). Using Sizzle's unique (which also sorts in document order) changed how add, andSelf, parents, nextAll, prevAll, and siblings work. after and before were changed to not use .add() (in order to guarantee their position in the jQuery set). Also, jQuery.data(elem) was updated to return that element's data object (instead of its ID).
$("<div/>").after("<span/>")
=> [ div, span ]
(calling after on a disconnected DOM node adds the nodes to the end of the jQuery set)

$("<div/>").before("<span/>")
=> [ span, div ]
(calling before on a disconnected DOM node adds the nodes to the beginning of the jQuery set)

$("div").add("span")
=> [ div, span, span, div, span ]
(results now come out in document order)

$("div").find("code").andSelf();
=> [ div, code, code ]
(results now come out in document order)

Same goes for .parents(), .nextAll(), .prevAll(), and .siblings().

Exception: .parents() will still return the results in reverse document order.

jQuery.data(elem)
=> { object of data }
(no longer returns the unique ID assigned to the node)
2009-09-25 17:55:20 +00:00
Jörn Zaefferer
f55fb36e54 remove globals in tests for compability with ?noglobals, to be enabled by default 2009-09-15 17:51:38 +00:00
John Resig
173c1477ae Added support for .before(), .after(), and .replaceWith() on disconnected DOM nodes. Fixes bug #3940. 2009-09-14 22:09:42 +00:00
Brandon Aaron
b539b6e1d9 remove and detach unit tests were not cleaning up, causing selector tests to fail 2009-09-14 20:45:58 +00:00
John Resig
520f1a2684 Broke the logic for .clean() wrap out into a separate, static, data structure. Also improved the performance of .html() looking for the case where .innerHTML can be used without problems. Also tweaked some cases where cleanData() was used, no need to use jQuery selectors in these cases. 2009-09-07 20:55:36 +00:00
Yehuda Katz
7a67f8897d Adds detach() 2009-07-21 09:17:33 +00:00
John Resig
7a04d1da54 We only support wrapping the first element around an element (all others are ignored). Fixes ticket #4903. 2009-07-14 23:43:58 +00:00
John Resig
991dafae16 Fixed wrapping of elements that hold text nodes. Thanks to David Flanagan for the patch. Fixes #4902. 2009-07-14 23:28:07 +00:00
Yehuda Katz
3595102154 Add tests for replaceAll(fn) and wrap(fn) -- mark wrapAll and wrapWithin as TODO 2009-07-12 21:08:54 +00:00
Yehuda Katz
7d7a960035 Support for .foo(Function) and testing. TODO: More tests 2009-07-12 20:19:43 +00:00
John Resig
4130319e97 Added explicit module names to the new unit tests. 2009-04-20 17:05:18 +00:00
Brandon Aaron
7c04a64016 breaking jquery out into smaller modules. added attributes.js, manipulation.js, and traversing.js 2009-03-18 21:15:38 +00:00