Commit Graph

394 Commits

Author SHA1 Message Date
Andrew Dupont
4fefe32876 Add Element#clone as a safe wrapper of native cloneNode. (Andrew Dupont, kangax) 2009-03-10 12:22:56 -05:00
Andrew Dupont
8f697f3e85 Add tests to ensure IE8 properly assigns a class name in the Element constructor. [#529 state:resolved] (Riki Fridrich, Andrew Dupont) 2009-03-08 20:27:38 -05:00
Andrew Dupont
fa12b00111 Remove sniffing from Element when detecting broken setAttribute in IE. [#571 state:resolved] (kangax) 2009-03-08 18:18:55 -05:00
Andrew Dupont
ba2c26090b Remove sniffing from Element.update branching in favor of feature detection. [#574 state:resolved] 2009-03-08 18:16:02 -05:00
Andrew Dupont
7833e8c909 Remove sniffing when branching escapeHTML and unescapeHTML. [#570 state:resolved] (kangax) 2009-03-08 18:02:09 -05:00
Andrew Dupont
e88f22e0c3 Redefine Element#down in IE 6-7 to avoid extending all descendants when no selector is given. [#452 state:resolved] (eno, Andrew Dupont) 2009-02-28 12:18:31 -06:00
Andrew Dupont
4a0b9b7c1d Reverse the definitions of Event#pointer(X|Y) and Event#pointer to prevent unnecessary computation. [#403 state:resolved] (Nick Stakenburg, Andrew Dupont). 2009-02-28 12:16:12 -06:00
Andrew Dupont
9d7a981e4c Add first-class support for mouseenter and mouseleave events in non-IE browsers (IE supports them natively). [#350 state:resolved] (Nick Stakenburg, Andrew Dupont) 2009-02-28 10:07:08 -06:00
Andrew Dupont
682a55c2d3 Make sure _extendedByPrototype, _countedByPrototype, and prototypeUID node expandos are accessed with typeof to prevent errors in some environments. [#354 state:resolved] (Hilberty, kangax, Andrew Dupont) 2009-02-28 04:48:57 -06:00
Andrew Dupont
26eaa4300b Fix issue where Opera 9.x returns incorrect results on certain Selector queries with descendant combinators. [#395 state:resolved] (Arpan, fearphage, kangax, Andrew Dupont) 2009-02-28 04:41:55 -06:00
Andrew Dupont
d22a9988fa Null out references to elements in cache on page unload. Need this in addition to the Event#stopObserving calls to clean up memory leaks. [#425 state:resolved] (ykphuah, mr_justin, Andrew Dupont) 2009-02-27 16:45:51 -06:00
Andrew Dupont
47abfa68f0 Ensure toString and valueOf properties are copied to a subclass only when necessary in IE6. [@382 state:resolved] (Samuel Lebeau) 2009-02-27 16:35:05 -06:00
Andrew Dupont
043653a282 Make sure getAttribute is used without flag when accessing the "type" attribute of an iframe (IE throws error otherwise). [#118 state:resolved] (Zekid, kangax) 2009-02-23 20:20:21 -06:00
Andrew Dupont
e9bdaef0af String#gsub should escape RegExp metacharacters when the first argument is a string. [#469 state:resolved] (michael, kangax) 2009-02-23 20:13:41 -06:00
Andrew Dupont
e3845ba0f6 Fix order of replacement in String#unescapeHTML [#544 state:resolved] (SWeini, kangax) 2009-02-23 20:07:43 -06:00
Andrew Dupont
432a9422d6 Fix issue where a Selector query rooted on a node that had not been attached to the document failed in IE. [#464 state:resolved] (jddalton, kangax, Douglas Fraser, Andrew Dupont) 2009-02-22 15:59:01 -06:00
Andrew Dupont
8fe518719e Fix Selector to match elements with attributes containing hyphens. [#285 state:resolved] (leiyou, jddalton, kangax) 2009-02-22 15:16:19 -06:00
Andrew Dupont
dc9d274d89 Make sure Form.reset always returns a reference to the receiver element. [#309 state:resolved] (Phil, kangax) 2009-02-22 15:11:40 -06:00
Andrew Dupont
97fc24a0b2 Escape ":" and "." characters when doing contextual CSS selection in browsers that support querySelectorAll. [#559 state:resolved] (fxtentacle, Andrew Dupont) 2009-02-22 12:45:00 -06:00
Andrew Dupont
91b787ae17 Ensure the target property on events is never undefined in IE. [#383 state:resolved] 2009-02-21 23:27:18 -06:00
Andrew Dupont
ab1313ea20 Ensure Element#descendants always returns an array. [#373 state:resolved] 2009-02-18 10:34:01 -06:00
sstephenson
463141edc5 Update CHANGELOG 2009-02-10 19:20:19 -07:00
Sam Stephenson
9bb3d7517d Update CHANGELOG 2009-02-10 11:26:14 -06:00
Andrew Dupont
997689fcea Switch Object.is(Array|String|Number) to use the vastly-superior approach discovered by Juriy. 2009-01-11 18:26:26 -06:00
savetheclocktower
31d1c6fd48 Further fix to ensure Object#is(String|Number) do not throw exceptions on host objects in IE. [#510 state:resolved] 2009-01-05 10:49:09 -06:00
Andrew Dupont
9f5c40c744 Ensure Enumerable#grep can handle strings with RegExp metacharacters. [#257 state:resolved] 2008-12-19 18:50:08 -06:00
Andrew Dupont
e9e8c7fbe5 Switch to the "doScroll approach" for the dom:loaded custom event. [#127 state:resolved] 2008-12-16 22:52:24 -06:00
savetheclocktower
0549952094 I suppose we owe it to our contributors to spell their names right. 2008-12-16 13:16:07 -06:00
Andrew Dupont
c3c953363b Optimize document.viewport.get(Dimensions|Width|Height). [#336 state:resolved] 2008-12-15 20:40:15 -06:00
Andrew Dupont
07506e648b Fix issue where Object#isString and Object#isNumber return false for String and Number "wrapper" objects. [#375 state:resolved] 2008-12-15 20:31:18 -06:00
Andrew Dupont
c493d09b7b Fix typo in CHANGELOG. 2008-12-15 20:21:44 -06:00
Andrew Dupont
60a6c7ac70 Set document.loaded = true before firing dom:loaded custom event. 2008-12-15 20:21:17 -06:00
savetheclocktower
c4f6066d2c Allow Element#store to accept an object containing several key/value pairs. 2008-12-15 09:51:16 -06:00
savetheclocktower
1ca385b18c Change Element#retrieve to return the element itself (for chaining). 2008-12-15 09:41:10 -06:00
Andrew Dupont
c4c7bf63db Update CHANGELOG. 2008-12-14 03:54:18 -06:00
Andrew Dupont
3b21105237 Alter event system to use new element storage API rather than have its own global hashtable. 2008-12-14 01:35:49 -06:00
Andrew Dupont
77b9a2614a Alter element storage API to handle the window object gracefully. 2008-12-14 01:35:12 -06:00
Andrew Dupont
3977e66796 Added Element#store and Element#retrieve for safe, hash-backed storage of element metadata (no memory leaks). Also added Element#getStorage for working with the element's storage hash directly. Hat tip: Mootools. 2008-12-12 23:53:39 -06:00
Tobie Langel
86407790d2 Fix issue where certain versions of Safari treat class names
case-insensitively in Selector/7390 queries. [#390 state:resolved]
2008-12-11 12:07:23 +01:00
Andrew Dupont
54bf343560 Fix issue where Function#argumentNames returned incorrect results in IE when comments were intermixed with argument names. [#397 state:resolved] 2008-12-11 12:02:26 +01:00
savetheclocktower
c039f68fb7 Selector.patterns should be represented as an ordered structure. [#315 state:resolved] 2008-12-11 12:00:44 +01:00
Tobie Langel
535d4e6d18 function.js rewrite. 2008-12-11 11:49:41 +01:00
Tobie Langel
34ee2078f8 Bump version number to 1.6.0.3. 2008-09-29 03:09:16 +02:00
Tobie Langel
413d2fd538 Add support for the Chrome browser in jstest.rb. 2008-09-29 02:32:03 +02:00
Thomas Fuchs
deb47c6361 Workaround a JavaScript exception in Opera. 2008-09-28 21:12:15 +02:00
Tobie Langel
289c87d4b1 Cosmetic changes to CHANGELOG. 2008-09-28 16:54:55 +02:00
Andrew Dupont
b7af8a745b Improve NodeList detection for Safari's $A function. [#187 state:resolved] 2008-09-07 20:19:05 -07:00
Andrew Dupont
5ddfad8a62 Use different tactic to sniff for Opera in order to avoid false positives in IE. [#176 state:resolved] 2008-09-07 20:18:21 -07:00
Andrew Dupont
7444a4ad02 Rename variable in Form.Element.Serializers.select. [#180 state:resolved] 2008-09-07 20:11:53 -07:00
Andrew Dupont
6c6f8d39ea Coerce Opera's version string into a number whenever we need to sniff. [#163 state:resolved] 2008-09-07 20:07:30 -07:00
Andrew Dupont
d88c25fd47 Ensure Object.isElement handles "falsy" values properly. 2008-09-07 19:26:21 -07:00
Tobie Langel
c01d1a26f7 Fix exiting test task on INT signal. 2008-09-07 19:25:11 -07:00
Tobie Langel
32628d41cd Fix unit test freeze in IE. 2008-09-07 19:21:52 -07:00
Andrew Dupont
b31f642e64 Ensure Hash does not return keys from the prototype chain (e.g., constructor, valueOf, toString). 2008-09-07 19:20:38 -07:00
Andrew Dupont
64002a9083 Fix toString/valueOf sharing same method reference via closure in Class#addMethods. Use plain property assignment, since Object.extend fails to enumerate over toString/valueOf. 2008-09-07 19:19:21 -07:00
Andrew Dupont
b49c572fa0 Stop Form.Element.disable from stealing focus. 2008-09-07 10:58:47 -07:00
Tobie Langel
6004aa8289 Ensure Element.hide and Element.show return an element, even if you pass an element ID. 2008-09-06 22:47:26 -07:00
Tobie Langel
ae707f4475 Fix an issue where Element#getStyle('height') returns null if the height is set to "auto." 2008-09-03 18:27:04 -07:00
Tobie Langel
919b952ec3 Add unit tests for Element#descendantOf. 2008-09-03 16:42:31 -07:00
Tobie Langel
6847d27509 Form#serializeElements should not serialize file inputs. 2008-09-03 16:33:03 -07:00
Andrew Dupont
9787801f06 Fix an issue with calling Event.pointer before the DOM is loaded. (kangax, jddalton) [#4 state:resolved] 2008-09-03 15:33:56 -07:00
Tobie Langel
b4ea2abda1 Element#down on an input element should not raise error. 2008-09-03 14:16:32 -07:00
Tobie Langel
b628c6de5c Avoid potential memory leaks in Firefox. [#12 state:resolved] 2008-09-03 12:19:28 -07:00
Tobie Langel
fecdee6f63 More unit tests for Object.isHash. 2008-09-03 12:19:15 -07:00
Tobie Langel
206a4c824f Allow Function#argumentNames to handle line breaks between arguments. 2008-09-03 12:17:53 -07:00
Thomas Fuchs
55af63fdd6 For consistency, add additional optional parameter "context" to Number.prototype.times. (samleb) 2008-09-03 12:07:57 -07:00
Tobie Langel
d1d2c3592d Fix typo. 2008-09-03 11:43:15 -07:00
Tobie Langel
9c8d9d89d6 Replace all instances of foo.__proto__ by foo['__proto__'] for Caja-compliance. 2008-09-02 19:06:25 -07:00
Tobie Langel
de5cc4a0f9 Speed up Function#argumentNames. Avoid Enum dependency. 2008-09-02 19:03:23 -07:00
kangax
b75bc189ec Fix Event#element accessing nonexistent tagName property (e.g. when element is a document) 2008-09-02 18:58:50 -07:00
Andrew Dupont
2c03d1a837 Amended failing Element#identify test. 2008-09-02 18:48:27 -07:00
Tobie Langel
ae24df95ba update changelog. 2008-09-02 18:34:59 -07:00
Andrew Dupont
d13a93882c Fix issue where Safari improperly reports an element as a descendant of itself. 2008-03-30 21:02:47 -05:00
Andrew Dupont
a3f7b712c3 Greatly simplify IE's implementation of Element#descendantOf. 2008-03-30 20:07:47 -05:00
Andrew Dupont
35a70710b0 Prevent exception when using Selector to search for an attribute that is not present. 2008-03-28 13:31:36 -05:00
Andrew Dupont
55e5d645e1 Fix issues where Firefox improperly returns the wrong node from a call to Event.element. Also fixes possible exception in Event.element in IE. 2008-03-28 13:13:16 -05:00
Andrew Dupont
03c1530014 Integrate support for the W3C Selectors API into the Selector class. Will now use the API when possible (browser supports the API *and* recognizes the given selector). Means minor changes to the semantics of :enabled, :disabled, and :empty in order to comply with CSS spec. 2008-03-27 01:18:15 -05:00
Tobie Langel
855e27311d prototype: Avoid re-extending element in Element#getDimensions. 2008-03-19 14:04:52 +00:00
Tobie Langel
598387f137 prototype: Prevent Hash#toQueryString from serializing objets. 2008-03-19 13:01:47 +00:00
Tobie Langel
32b1b6b7cd prototype: Fix Event#pointer in IE standard mode. Closes #9920. 2008-03-19 07:01:49 +00:00
Tobie Langel
78c4b99df7 prototype: Instanciate Test.Unit.Logger on window load. 2008-03-16 20:00:07 +00:00
Tobie Langel
6bae548e0a prototype: Refactor String#escapeHTML to avoid using the with statement. 2008-03-16 19:08:34 +00:00
Tobie Langel
c01cb850c1 prototype: Remove usage of the statement from unit tests. 2008-03-16 18:53:51 +00:00
Tobie Langel
87ce1533e4 prototype: Complete rewrite of the deprecation helper. 2008-03-15 16:43:00 +00:00
Tobie Langel
addfdef8ff prototype: Make Element#writeAttribute handle frameborder attribute in IE. Closes #11068. 2008-03-09 08:05:29 +00:00
Tobie Langel
359e8810de prototype: Minor clean-up of selector.js. Closes #10844. 2008-03-09 07:27:02 +00:00
Tobie Langel
c7e0a3d93c prototype: Make String#unescapeHTML strip tags in IE. Closes #10173. 2008-03-09 07:21:45 +00:00
Tobie Langel
bfee207d1a prototype: Stop form observers in unit tests. Closes #10938. 2008-03-09 07:14:28 +00:00
Tobie Langel
5a50e4d2c0 prototype: Performance improvements for Enumerables. Closes #11264. 2008-03-09 06:56:03 +00:00
Tobie Langel
fffb3c1e99 prototype: mark Hash.toJSON() as removed. 2008-02-29 06:53:30 +00:00
Tobie Langel
088c049885 prototype: improvements to deprecation.js. 2008-02-26 12:53:41 +00:00
Andrew Dupont
54a20847c8 Change deprecation extension to use Firebug's console.warn and console.error. [Andrew Dupont, Tobie Langel] 2008-02-12 19:04:26 +00:00
Tobie Langel
93d359f543 prototype fix a typo. 2008-02-05 03:38:37 +00:00
Tobie Langel
5630369f42 prototype: Make Prototype tagName comparisons XHTML-compliant. Closes #11012, #11013, #11014. 2008-02-05 03:35:04 +00:00
Tobie Langel
7821b989fe prototype: Avoid breaking Element.prototype in browsers which support it. Closes #11004. 2008-02-04 23:22:18 +00:00
Tobie Langel
2830ac2ac5 prototype: Prevent Element#cumulativeOffset, Element#getOffsetParent, Element#positionedOffset, Element#viewportOffset and Element#clonePosition from throwing an error in IE when called on a parent-less element. Closes #9416, #10192, #10248. 2008-02-03 22:29:29 +00:00
Tobie Langel
d770a6c704 prototype: Prevent Enumerable#eachSlice from entering into an endless loop if passed an argument smaller than 1. Closes #10665. 2008-02-03 21:08:13 +00:00
Tobie Langel
f4d68350f3 prototype: Allow Selector to correctly detect the presence of namespaced attributes. Closes #10987. 2008-02-03 19:45:32 +00:00
Tobie Langel
ea9d81eea1 prototype: Make Element#absolutize and Element#relativize always return element. Closes #10983. 2008-02-03 19:36:35 +00:00
Tobie Langel
ed1469396e prototype: Add deprecation extension. 2008-02-01 22:47:00 +00:00