Commit graph

99 commits

Author SHA1 Message Date
timmywil 448111cbd4 No longer need to check for objects or string of null with the special form treatment and updates to removeAttr 2011-04-03 19:13:40 -04:00
timmywil 5caf7d8376 Clean up 2011-04-03 19:13:40 -04:00
timmywil 56014a1a00 Shorten even further 2011-04-03 19:13:40 -04:00
timmywil 479b28fb6a Modularize special form code for IE6/7 and clean up attr again 2011-04-03 19:13:40 -04:00
timmywil e0900a686d Fix issue where non-existant attributes on forms in IE6/7 were throwing errors 2011-04-03 19:13:40 -04:00
timmywil 3892df207d Add test for bug #3116 2011-04-03 19:13:40 -04:00
timmywil 9e05a0a37f Fix #6562, tighten up the special code for form objects, add name attrHook for IE6/7, and don't check for undefined with getting hook'd attr 2011-04-03 19:13:40 -04:00
timmywil 102053abd8 Fix #7472 and added test for #3113
- Forms with an input that has either name="action" or name="some-other-attr-on-the-form" caused problems in IE6/7.  This is fixed.

- Changed check in $.attr for ret === null to typeof ret === "object" to catch any inputs that are accidentally retrieved in IE6/7, since attributes cannot be set to objects and typeof null === "object"
2011-04-03 19:13:39 -04:00
timmywil 11cfdb2394 Non-existent attribute for jQuery.attr no longer needs to check for "undefined"
- Remove an unnecessary var

- Use variable in removeAttr for better minification
2011-04-03 19:13:39 -04:00
timmywil dfeeb872d6 Performance enhancement switching nodeType to a var 2011-04-03 19:13:39 -04:00
timmywil d28922bc03 Pass jslint, 2 missing semicolons 2011-04-03 19:13:39 -04:00
timmywil dbe3b7a9d0 Style edits according to comments from John and rwaldron. 2011-04-03 19:13:39 -04:00
timmywil f578e0f997 Don't use extend when setting the action attrHook for IE6/7 2011-04-03 19:13:39 -04:00
timmywil 77c559c3cb No, don't return this. 2011-04-03 19:13:39 -04:00
timmywil b85d2cd8a5 Simplify jQuery.removeAttr and return this 2011-04-03 19:13:39 -04:00
timmywil 9f88fa9165 Full test suite now passes in all browsers! There are probably some tweaks we can make to shorten and simplify.
- removeAttr now only uses setAttribute if camelCase setAttribute is not supported

  + Might want to rename jQuery.support.getSetAttribute

- tabIndex is a special case now for hooks where undefined should be returned.

  + Should we be checking if hooks returns undefined?  undefined might be the desired return value in future hooks.
    As of now, tabIndex is the only one that needs it, but the test suite will still pass if we don't check if hooks are undefined.
2011-04-03 19:13:39 -04:00
timmywil 8cd30c62d8 Continuing IE7 testing, conditional attr fixes and hooks with feature testing. Will figure out a way to shorten after the test suite passes. 2011-04-03 19:13:39 -04:00
timmywil ebb8e8e300 Fix feature test, accidentally got rid of closure end 2011-04-03 19:13:39 -04:00
timmywil 00abeaee17 Didn't actually need the hooks anymore 2011-04-03 19:13:38 -04:00
timmywil 4baa213d88 First proposed solution for IE6/7 get/setAttribute quirks. Needs more testing, but solves some issues 2011-04-03 19:13:38 -04:00
timmywil 607210e010 Speed up hasAttr a little 2011-04-03 19:13:38 -04:00
timmywil 5eecb13fa3 Now passes in IE8, changed around $.hasAttr and switched the attrHook for selected to be a propHook 2011-04-03 19:13:38 -04:00
timmywil de79e8c7e0 Make the new attr/prop changes pass the test suite (in Webkit). There are still errors in IE.
+ Added hooks for selected, checked, readonly, disabled to removeAttr if set to falsey

+ Removed all attrs from attrFix, these aren't needed for setAttribute

+ If prop is used for class, do we want a propFix for class?

  - We could just assume the user should know to use className with prop.  I've done the latter for now.

+ Created tests for $.fn.prop and $.fn.removeProp

  - Actually all I did was change broken attr tests to prop where it made sense.
2011-04-03 19:13:38 -04:00
jeresig ab4e300919 Very crude first pass at splitting apart the attr/prop logic. Also adding in attrHooks/propHooks. All of it is completely untested. 2011-04-03 19:13:38 -04:00
rwldrn 43a41ba7ec Make sure .val() works after form.reset() in IE. Fixes #2551. 2011-02-10 23:50:02 +01:00
Colin Snover 8e59a99e0a Change the way jQuery.data works so that there is no longer a chance of collision between user data and internal data. Fixes #6968. 2011-01-09 15:52:33 -06:00
Colin Snover 3e0cc81504 Clean trailing whitespace from all files. 2010-12-30 00:34:48 -06:00
Anton M cc9dbd06e5 Fix attr() problems in IE with attribute nodes. Followup to commit b50f41a2.
IE can't add properties on an attribute-node element, thus we handle it
like text-/comment-nodes.
2010-12-07 03:17:42 +01:00
John Resig d4a9d45527 Merge branch 'restrictAttr' of https://github.com/jitter/jquery into jitter-restrictAttr 2010-12-06 17:02:00 -05:00
Anton M df0a3fb853 Handle carriage return characters in className property. Fixes #7673. 2010-12-01 21:31:22 +01:00
Anton M b50f41a2e3 Make sure attr() works on non DOM element nodes. Fixes #7202, #7451, #7500.
Also added some tests for this attr(name), attr(name, value) and removeAttr(name).
2010-11-13 14:39:28 +01:00
Anton M 49f088f2db Partially revert commit a64dc04050.
Removing the conditional was too liberal as now attr() would even work
on plain javascript objects. Keeping a check to make sure it is at least
a DOM Node is appropriate. Using nodeName as in the commit which introduced
the nodeType === 1 check seems plausible.
2010-11-10 00:36:53 +01:00
Colin Snover a64dc04050 Remove conditional that prevents attr from working on non-Element nodes. Fixes #7451. 2010-11-09 15:52:20 -05:00
John Resig fb48ae8e6c Make sure that when multiple variables are being declared that assignments are each done on their own line. 2010-11-09 11:09:07 -05:00
Alex Sexton 086822e641 Moved jQuery.props to attributes since it was only used in support. Fixes #6897 - suggestion by dmethvin 2010-10-25 02:31:19 -05:00
Colin Snover b03416954d Coerce all array values to strings before comparison in val(). Fixes bug #7123. 2010-10-08 22:48:06 -05:00
John Resig c7c0677230 Make .attr(name, null) equivalent to removeAttr(name). (Was roughly this before - but is now consistent across platforms). Fixes #6341. 2010-09-28 11:12:13 -04:00
jeresig d558e9eb6f Some minor cleanup of the last commit. 2010-09-27 10:21:50 -04:00
jeresig 97d468fbf0 Add a feature test for options inside a disabled select. Follow-up to 157a383dae. 2010-09-27 10:19:55 -04:00
jeresig a384d840d6 Only do the hasAttribute check if the method exists - IE falls back to the === null check below which allows this to still work. Follow-up to cb40495b21 - thanks to @jitter for the catch. 2010-09-27 09:19:21 -04:00
jeresig 157a383dae Bug fix for commit 2c4b20809e - technique wasn't working as expected in WebKit browsers. Thanks to @jitter for the bug fix. 2010-09-27 09:07:54 -04:00
dmethvin 0636dffc24 Make .val(undefined) == .val("") and chainable; fixes #4130.
Ensure .val(null) sets an empty string on IE6/7; fixes #5163.
2010-09-25 05:57:14 +08:00
Dave Methvin 2c4b20809e Don't have .val() return selected-but-disabled options, or selected options inside a disabled optgroup. Doesn't change the .val() returned for a disabled select. Fixes #3240, adapted from Nathan Hammond's patch there. 2010-09-24 17:26:22 -04:00
jeresig 8e1d369710 Some minor lint fixes for the RegExp. 2010-09-22 09:46:21 -04:00
jeresig 9dc6e0c572 Applied the RegExp issues reported by Jeff Robinson here: http://jmrware.com/articles/2010/jqueryregex/jQueryRegexes.html Additionally broke out all remaining inline RegExp. Fixes #7062. 2010-09-22 09:16:28 -04:00
jeresig a44ec40277 Make sure that jQuery works even when the individual modules are loaded separately AND jQuery.noConflict(true) is used. Fixes #7011. 2010-09-08 12:00:29 -04:00
John Resig 920099b29c First pass at unifying the various CSS methods in jQuery (jQuery.style, jQuery.curCSS, and jQuery.css are now all under jQuery.css). 2010-09-05 10:17:18 -04:00
John Resig cb40495b21 Make sure that missing attributes return undefined in Blackberry 4.7. Fixes #6938. 2010-08-24 07:28:47 -07:00
John Resig 392174431a .val() on empty options returns the text value rather than the value in Blackberry 4.7. Fixes #6932. 2010-08-23 14:10:39 -07:00
John Resig 396dd21273 Fixing getting/setting classes and makeArray(RegExp) for Blackberry 4.7. Fixes #6930, #6931. 2010-08-23 12:38:55 -07:00