Sam Stephenson
90c9c69ff0
prototype: Add Function#argumentNames, which returns an ordered array of the function's named arguments.
2007-07-30 04:38:20 +00:00
Sam Stephenson
82bedcee84
prototype: Optimize Selector#match and Element#match for simple selectors. Closes #9082 .
2007-07-24 20:49:55 +00:00
Sam Stephenson
c0735dba77
prototype: Make Element#wrap accept a second argument for setting attributes on the wrapper. Allow wrapping elements which are not part of the document. Closes #9071 .
2007-07-24 19:08:55 +00:00
Sam Stephenson
44ef74813b
prototype: Improvements for Element#replace, Element#update and Element#insert. Closes #7429 , #9060 .
2007-07-24 18:52:17 +00:00
Sam Stephenson
7b2ce66e88
prototype: Make Element#setStyle accept a string argument of CSS rules. Deprecate uncamelized style property names when setting styles using an object (for performance reasons). Closes #9059 .
2007-07-24 18:14:36 +00:00
Sam Stephenson
c6f3daadaa
prototype: Add Element#identify, which returns the element's ID if it exists, or sets and returns a unique, auto-generated ID (of the form 'anonymous_element_' + auto-incremented digit) otherwise. Use this when you need to ensure an element has an ID. Closes #9012 .
2007-07-24 17:41:27 +00:00
Sam Stephenson
7e6481bcd7
prototype: Make Element#readAttribute work for cloned elements in IE. Closes #8481 .
2007-07-24 17:31:23 +00:00
Sam Stephenson
ff45622e39
prototype: Template enhancements. Closes #8166 .
2007-07-24 17:24:25 +00:00
Sam Stephenson
b59399bdd3
prototype: Extended grep semantics. The first argument to Enumerable#grep is now a filter (an object with a match() method) so you can now e.g. filter an array of DOM nodes by CSS selector. Closes #7596 .
2007-07-24 16:47:12 +00:00
Sam Stephenson
38fa39af92
prototype: Make String#scan explicitly return a string. Closes #6350 .
2007-07-24 16:30:19 +00:00
Thomas Fuchs
513042dd98
Add Array#intersect for set intersection. Returns a new array containing all items common to the array and the argument, with duplicates removed (clone of the Ruby & method).
2007-07-18 21:07:31 +00:00
Thomas Fuchs
cea24d6cc2
Prototype: Rename Element#getElementsBySelector to Element#select and add alias for Element#getElementsBySelector. Add Element#adjacent as a shortcut to selecting all adjacent nodes (and their children) that match a CSS selector.
2007-07-13 08:36:14 +00:00
Sam Stephenson
1c17b6381a
prototype: Enhance the Enumerable and Array APIs to more closely match those of JavaScript 1.6 as implemented in Firefox 1.5. Closes #6650 , #8409 .
2007-07-09 18:55:58 +00:00
Thomas Fuchs
9e7efd5361
Prototype: merges from form branch. Closes #5031 , #5902 , #7595 , #8401 , #8483 , #8767 . [Mislav Marohnić, Tomas, Christophe Porteneuve, Jonathan Viney]
2007-06-27 10:38:54 +00:00
Sam Stephenson
f2d304b3ee
prototype: Merge [7066] from branches/1-5-1-1
2007-06-19 23:31:41 +00:00
Sam Stephenson
d6bf5e40ce
prototype: Make document.getElementsByClassName match a subset of the WHATWG Web Applications 1.0 specification which was adopted in Firefox 3 ( http://www.whatwg.org/specs/web-apps/current-work/#getelementsbyclassname ). It now supports multiple class names given as a whitespace-separated list in a string. Array argument is not supported. The method will only return the nodes that match all the class names. In browsers that implement the method natively it will not be overwritten. Closes #8401 .
2007-06-19 20:59:14 +00:00
Thomas Fuchs
0894f235b8
Begone, test artifacts
2007-06-17 22:29:44 +00:00
Thomas Fuchs
03ae9dd3ee
* Make document.getElementsByClassName match the WHATWG Web Applications 1.0 specification which was adopted in Firefox 3 ( http://www.whatwg.org/specs/web-apps/current-work/#getelementsbyclassname ). It now supports multiple class names given as an array or a space-separated list in a string. The method will only return the nodes that match all the class names. In browsers that implement the method natively it will not be overwritten. Closes #8401 . [Mislav Marohnic]
2007-06-17 22:26:46 +00:00
Thomas Fuchs
9ff57b042d
Prevent a crash in Safari when calling String#evalJSON(true) on very large strings. Add String#isJSON. Closes #7834 . [Tobie Langel]
2007-06-17 16:03:38 +00:00
Thomas Fuchs
1e13c1d0b7
Prototype: Prevent a crash in Safari 1.3 on String#stripScripts and String#extractScripts. Closes #8332 . Allow JSON data to contain line breaks. Closes #8271 .
2007-06-13 20:57:19 +00:00
Thomas Fuchs
d5665e0d22
Prototype: add failing unit test (IE) for Element.Methods.getStyle on auto-calculated widths. References #8564 .
2007-06-10 12:58:32 +00:00
Thomas Fuchs
51bb86dc39
Add Hash.prototype.index which returns the first found property that has a specific value. Closes #8528 . [Thomas Fuchs, slusarz, Mislav Marohnic]
2007-06-10 11:09:06 +00:00
Thomas Fuchs
86118c3cb5
Prototype: Add Number.prototype.round/ceil/floor/abs as an aliases to the respective methods in Math. Refactor to seperate number extensions from base.js. [Thomas Fuchs]
2007-06-06 16:10:16 +00:00
Thomas Fuchs
0c7bac17f0
Prototype: Make Element#absolutize and Element#relativize properly use Element#getStyle. Closes #8580 . [Christophe Porteneuve]
2007-06-06 14:30:01 +00:00
Thomas Fuchs
225597cb35
Prototype: Add Number.prototype.round as an alias to Math.round(). [Thomas Fuchs]
2007-06-06 12:08:15 +00:00
Thomas Fuchs
ae8d11d819
Prototype: make new insertion syntax work again on Ajax.Updater
2007-06-02 16:32:43 +00:00
Thomas Fuchs
5f4bab4dcb
Prototype: Fix Element.insert for null values and numeric values when defaulting to bottom
2007-06-02 16:00:47 +00:00
Thomas Fuchs
d4d4fddc7c
Prototype: Change Element.insert syntax to allow multiple positions.
2007-06-02 15:08:50 +00:00
Thomas Fuchs
67783190f4
whitespace is my homeboy
2007-05-31 22:35:13 +00:00
Thomas Fuchs
4cafec8a9c
Prototype: String.prototype.truncate now explicitly converts its return value into a string if no truncation takes place. This prevents possible issues with methods expecting input data that is typeof == string.
2007-05-31 22:32:25 +00:00
Thomas Fuchs
f099e670f5
Element.setOpacity now calls removeAttribute on the filter style on IE if no more filters remain, which makes Cleartype work properly. Closes #8376 .
2007-05-19 00:11:46 +00:00
Sam Stephenson
beeb12e7dd
prototype: Prevent an error being thrown by $$ when #id does not exist in $$("div #id"). Closes #8325 .
2007-05-18 00:51:34 +00:00
Thomas Fuchs
df33e410b0
testElementMethodInsert: add test for non-lowercase position argument
2007-05-12 19:12:04 +00:00
Sam Stephenson
83b4b337e1
Merge -r6634:HEAD from ../branches/dom.
...
* Make Element#update and Element#insert work for SELECT tags in IE and Opera. [Tobie Langel]
* Make Element#insert and Element#update better handle TABLE related elements in IE and Opera. Closes #7776 , #8040 , #7550 , #7776 , #7938 . [Tobie Langel]
* Make Element#readAttribute('title') work in Opera. [Tobie Langel]
* Make Element#replace work with form elements in Firefox and Safari. Closes #8010 , #7989 . [dsl239, Tobie Langel]
* Add Element#wrap which wraps the element inside a new one. Closes #5732 . [P. Vande, Tobie Langel]
* Make Element into a constructor: new Element(tagName, attributes). Add Element#writeAttribute which accepts a hash of attributes or a name/value pair. Closes #7476 . [Mislav Marohnić, haraldmartin, Tobie Langel]
* Insertion overhaul: Add Element.insert(content[, position = 'Bottom']). Deprecate Insertion (kept for backwards compatibility). Make Ajax.Updater option.insertion accept both Insertion.Top or the now preferred 'Top'. Closes #7907 . [Tobie Langel]
2007-05-12 05:01:56 +00:00
Sam Stephenson
67a4d00588
prototype: Refactor Element.extend and eliminate Element.extend.cache.
2007-05-12 04:32:30 +00:00
Sam Stephenson
f457c98673
prototype: Merge -r6639:HEAD from branches/rel_1-5-1 into trunk.
2007-05-01 04:19:46 +00:00
Sam Stephenson
562e61fc8c
prototype: Add Function#curry, Function#delay, Function#defer, and Function#wrap. Closes #8134 .
2007-04-29 05:37:07 +00:00
Sam Stephenson
d6c7cd9c9e
prototype: Fix $F breakage from [6598].
2007-04-28 03:28:13 +00:00
Sam Stephenson
b76d34e7bb
prototype: Fix regression in which no-argument calls to Element.addMethods() would not add the methods defined in Form.Methods and Form.Element.Methods. Closes #8206 .
2007-04-28 02:32:21 +00:00
Sam Stephenson
1886b03d60
prototype: Fix Element#readAttribute to work with the 'type' attribute in IE. Closes #8160 .
2007-04-28 02:23:26 +00:00
Sam Stephenson
47bfeb5083
prototype: Add Element#childElements as an alias for Element#immediateDescendants.
2007-04-24 06:17:59 +00:00
Sam Stephenson
5784d78f6e
prototype: Add Element#firstDescendant to retrieve the first non-text child node of an element. Optimize DOM navigation methods (Element#up, Element#down, Element#previous, Element#next) for no-argument calls. Closes #7848 .
2007-04-24 06:06:44 +00:00
Sam Stephenson
63342b9c01
prototype: Element.addMethods should add methods to Element as well as Element.Methods. Closes #7888 .
2007-04-24 05:23:41 +00:00
Sam Stephenson
7a324b859c
prototype: Add support for per-request onCreate callbacks to Ajax.Request. Closes #8011 .
2007-04-24 03:58:34 +00:00
Sam Stephenson
fea6bc1a21
prototype: Automatically strip security delimiter comments from JSON strings before evaling them. The default delimiter is '/*-secure- ... */' or you can specify your own with the Prototype.JSONFilter regular expression. If you wrap your JSON response bodies in this delimiter on the server side, rogue external sites can't hijack potentially sensitive data via <script> tags. Closes #7910 .
2007-04-24 03:31:14 +00:00
Sam Stephenson
643b7bec37
prototype: Add extra spacing so Array#toJSON and Hash#toJSON generate YAML-loadable JSON. Closes #7883 .
2007-04-24 02:50:52 +00:00
Thomas Fuchs
193104ac33
Trivial dom.html cleanups, dont do the hidden element getDimensions test for now
2007-04-18 16:30:40 +00:00
Thomas Fuchs
95ac141bd9
Fix Form.request for forms containing an input element with name="action". Closes #8063 .
2007-04-17 17:41:22 +00:00
Thomas Fuchs
4c90be6a30
Prevent a crash on Safari on String.prototype.stripScripts and extractScripts with large <script> tags.
2007-04-03 22:21:58 +00:00
Thomas Fuchs
c0509c7f5f
Prototype: clean (un)escapeHTML IE special casing and optimize speed for IE and Safari
2007-03-29 17:39:48 +00:00