Commit Graph

514 Commits

Author SHA1 Message Date
tjcrowder 63b7c5d9e8 doc: Added caveats and examples to String#stripTags and String#stripScripts [#102 state:resolved] 2009-08-22 04:36:24 +02:00
tjcrowder 67311e07fd doc: Moved scope warning from Ajax.Updater to String#evalScripts and left cross link. [#38 state:resolved] 2009-08-22 04:35:52 +02:00
tjcrowder cc478fcfbd doc: Documented Form#serialize and Form.serializeElements. [#21 state:resolved] 2009-08-22 04:34:19 +02:00
tjcrowder 41d1088160 doc: Documented Event.observe and Event.stopObserving, including vagaries about change events across browsers. [#6 state:resolved] 2009-08-22 04:32:34 +02:00
tjcrowder c57c2d270c doc: Documented Abstract.TimedObserver, Form.Observer, and Form.Element.Observer. 2009-08-22 04:30:52 +02:00
Andrew Dupont cdc4366153 Add more `Enumerable` citations in PDoc. 2009-08-21 08:11:10 -05:00
Andrew Dupont fefc2b728d Change PDoc syntax for "methodized" methods. 2009-08-21 08:11:09 -05:00
Tobie Langel b214744a5d Greatly simplify String#(un)escapeHTML and remove their DOM dependencies. 2009-08-12 01:27:10 +02:00
Tobie Langel b57ea83222 Remove redundant if statement in Element#readAttribute. 2009-08-12 01:23:47 +02:00
Tobie Langel d88aef3a55 Add missing semicolons. [#751 state:resolved] 2009-07-30 02:16:39 +02:00
Juriy Zaytsev 41b034b93b Improve `getClass` performance. [#747 state:resolved] 2009-07-29 15:04:39 +02:00
Tobie Langel add69978e0 Fix a ridiculous yet harmless typo in a previous commit. Add more tests for PeriodicalExecuter. 2009-07-22 16:06:17 +02:00
Samuel Lebeau fe388ebca5 Replace calls to String#gsub by String#replace internally, be more specific about which version of Safari is supported 2009-07-21 17:52:43 +02:00
Tobie Langel 49090bc957 Workaround IE's defficient handling of finally statements in PeriodicalExecuter. [#696 state:resolved] 2009-07-21 17:19:46 +02:00
Andrew Dupont e41ccba6d8 Re-throw error in otherwise-empty `catch` clause so that `PeriodicalExecuter` does not suppress exceptions. [#696 state:resolved] (Samuel Lebeau) 2009-07-18 18:51:16 +02:00
Andrew Dupont 059ce21040 Proper fix (and unit tests) for selector escaping issue. 2009-07-17 12:13:47 +02:00
Andrew Dupont f4570f39d7 Fix issue related to escaping of selectors for querySelectorAll. [#559 state:resolved] 2009-07-13 14:12:18 +02:00
Andrew Dupont 39f045d240 Rollback IFRAME error "feature test" for IE. Fix it another way. 2009-07-13 13:52:54 +02:00
Andrew Dupont 4586adff0b Bump version number. 2009-06-16 16:37:50 -05:00
Andrew Dupont 16b69a2ebf Update inline documentation. 2009-06-13 19:27:22 -05:00
Tobie Langel ad89bfb738 Fixed a variety of non-ASCII chars and similar [#610 state:resolved] 2009-06-11 22:48:38 +02:00
Juriy Zaytsev f50dc3639d No need to recreate `subclass` function every time inheritance is being set up in `Class.create` 2009-06-10 18:32:48 -04:00
Juriy Zaytsev 78f6fad570 Simplify snippet of `_insertionTranslations.tags` extension. 2009-06-04 23:18:28 -05:00
Juriy Zaytsev b2492aeec4 Fix `Template#evaluate` "eating" previous character if `null` was returned from `toTemplateReplacements` function. 2009-06-04 23:14:05 -05:00
Juriy Zaytsev d655665fb6 Make sure (defficient) APPLET, OBJECT and EMBED elements are extended with simulated methods in IE8. Return early if _extendedByPrototype is present on an element. 2009-06-04 23:11:06 -05:00
Juriy Zaytsev 703e988745 Replace array creation and `Array#include` with a more efficient `RegExp#test` 2009-06-04 23:07:41 -05:00
Juriy Zaytsev 7d02aef6ca Reorganize the way `ElementExtensions` are defined. Make sure elements used in SpecificElementExtensions are cleaned up. 2009-06-04 23:01:47 -05:00
Juriy Zaytsev fa4314aeea No need to overengineer. 2009-06-04 22:59:54 -05:00
Andrew Dupont 1b20386115 Minor PDoc changes. 2009-06-04 22:56:55 -05:00
Andrew Dupont 269653fd38 Fix typo in selector.js. 2009-06-01 16:25:32 -05:00
Juriy Zaytsev 31fe0a0328 Make sure $A works with primitive values. 2009-05-15 22:05:53 -05:00
Juriy Zaytsev cebf7d673b Do not browser sniff when forking `unmark` function in selector suite. Instead use a proper test - PROPERTIES_ATTRIBUTES_MAP. 2009-05-15 22:04:21 -05:00
Juriy Zaytsev 74374347c1 Do not use short-hand element methods notation (@element.getStyle() -> Element.getStyle(@element)) for performance reasons. Do not use `$A` and `Array.prototype.shift` when `Array.prototype.slice` can be used instead. 2009-05-15 22:02:51 -05:00
Andrew Dupont c44a071a3f `Prototype.Browser.Opera` now uses stronger inference and is determined by [[Class]] of `window.opera` being - "Opera". (kangax) 2009-05-15 21:50:32 -05:00
Andrew Dupont cc0a75fe19 Make regex used in `stripTags` stricter. (igor, kangax) [#674 state:resolved] 2009-05-11 23:29:26 -05:00
Juriy Zaytsev cb729625ae Use native `String.prototype.trim` in `String.prototype.trim` when available. (kangax) 2009-05-11 23:23:13 -05:00
Andrew Dupont 005f066f1a Fix typo in event.js. 2009-05-02 13:41:10 -05:00
Andrew Dupont 7bf8bd415f Fix accidental backtick escape. 2009-04-03 12:52:45 -05:00
Juriy Zaytsev c480bd7b97 Do not sniff when testing for IE's proprietary mouseenter/mouseleave events support. Use more robust inference instead. 2009-03-28 19:45:33 -04:00
Andrew Dupont fd46f6bbcf Bump version number. 2009-03-27 17:59:59 -05:00
Juriy Zaytsev 6c38d84254 Revert Opera title fix 2009-03-25 01:19:28 -04:00
Juriy Zaytsev 63bb172663 Fix erroneous `readAttribute` test. 2009-03-25 00:47:54 -04:00
Juriy Zaytsev b35ebeb135 Avoid creation of element, use document.documentElement instead 2009-03-24 23:43:08 -04:00
Juriy Zaytsev 3e3b470009 Use feature testing in `Element#readAttribute` when taking care of Opera's `getAttribute('title')` quirk 2009-03-24 23:33:17 -04:00
Juriy Zaytsev 0b4e142d8a `Form.serialize` now works safely with forms that have "length"-named elements. [#77 state:resolved] 2009-03-23 00:15:34 -04:00
Juriy Zaytsev 71a8663370 `Element#update` now takes care of SCRIPT elements in IE. [#573 state:resolved] 2009-03-22 19:04:04 -04:00
Juriy Zaytsev 2c986d8eaf Remove unused local variables. Fix failing form test. 2009-03-22 10:53:08 -04:00
Juriy Zaytsev fa15f212fa Fix `escapeHTML` in Chrome by using a more strict check. 2009-03-22 01:12:45 -04:00
Juriy Zaytsev 0e63247604 Make `Element.extend` take care of IE8 HTMLAppletElement and HTMLObjectElement objects bug. 2009-03-21 22:10:03 -04:00
Andrew Dupont 9bb8fbf2ff Merge branch 'master' of git@github.com:sstephenson/prototype 2009-03-20 19:44:11 -05:00
Juriy Zaytsev 06068431f7 Fix for/htmlFor translation in IE8 2009-03-20 18:08:34 -04:00
Juriy Zaytsev 30c1935cdb Fix `writeAttribute` and `readAttribute` failures in IE8. Use proper feature testing when taking care of getAttribute/setAttribute glitches. 2009-03-20 17:33:56 -04:00
Juriy Zaytsev b34355653e Remove Array#reduce [#569 state:resolved] 2009-03-20 12:05:02 -04:00
Andrew Dupont deeb3bbd88 PDoc changes. 2009-03-20 05:46:53 -05:00
Juriy Zaytsev c7a5d3480e Make sure try/catch/finally is used instead of try/finally [#421 state:resolved] 2009-03-19 16:47:07 -04:00
Juriy Zaytsev 1a375daea2 Remove sniffing from `$A` by using `in` operator when accessing property of a nodelist. 2009-03-19 16:22:37 -04: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 4453e62fd5 Add the last of the documentation for the Ajax section. 2009-03-07 20:01:22 -06:00
Andrew Dupont deb3df525e Change some PDoc characters to HTML entities so that we don't confuse Sprockets. 2009-03-07 15:44:50 -06:00
Andrew Dupont 0f5c9bfcc5 Updates to PDoc in DOM section. 2009-03-07 15:44:12 -06:00
Andrew Dupont 449e532f9a Add PDoc for most of Ajax section. 2009-03-07 15:43:20 -06:00
Andrew Dupont 8c2af9bd66 Descriptions of all the classes/namespaces in the "Language" section. 2009-03-06 15:41:11 -06:00
Andrew Dupont d189f809a4 Fixed aliases in PDoc for Enumerable. 2009-03-06 12:20:09 -06:00
Andrew Dupont 00742ac153 Extensive PDoc changes. 2009-03-05 13:56:01 -06: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 ee56c93f16 Remove old lines from class.js. 2009-02-28 04:36:44 -06:00
Andrew Dupont de77550574 Minor PDoc corrections. 2009-02-27 17:02:42 -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 d97466a7c1 Corrected a regex that was not picking up on attributes with hyphens. 2009-02-25 23:55:29 -06:00
Andrew Dupont 68096071a4 Added PDoc for form.js. 2009-02-25 17:00:40 -06:00
Andrew Dupont 8bfd9cf555 Added PDoc for event.js. 2009-02-24 05:44:04 -06:00
Andrew Dupont 60b9477c5b Added PDoc for dom.js. 2009-02-24 05:21:31 -06:00
Andrew Dupont 7a32414655 More PDoc additions. 2009-02-23 20:35:49 -06:00
Andrew Dupont c9df079839 Added/corrected some PDoc. 2009-02-23 20:21:02 -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 9da5045df2 Removed redundant lines in selector.js. [#138 state:resolved] (Richard Quadling) 2009-02-21 23:32: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
Andrew Dupont d3189652a6 Fixed incorrect usage of === operator. [#127 state:resolved] 2009-02-18 10:30:19 -06:00
James Wheare 03512f5060 Fix for http://prototype.lighthouseapp.com/projects/8886/tickets/543. Don't switch fixed position elements to absolute in Element.getDimensions
Signed-off-by: Sam Stephenson <sam@37signals.com>
2009-02-11 10:14:15 +08:00
Samuel Lebeau ceb7b72621 Avoid String#sub with empty pattern to make endless loop [#534 state:resolved]
Signed-off-by: Sam Stephenson <sam@37signals.com>
2009-02-11 10:12:28 +08:00
Sam Stephenson a519c02b2e Sprocketize Prototype 2009-01-27 15:42:32 -06:00
Andrew Dupont 952feb48a3 Changes to dom.js to get direct extension of element prototypes working in IE8. We're down to one test failure in the dom.js unit tests. 2009-01-21 20:40:45 -06:00
Andrew Dupont 4af7dc0f5d Changed feature detection in order to properly detect the mutable Element prototypes in IE8. 2009-01-21 20:29:23 -06:00
Samuel Lebeau 8a999a0389 Fix Range documentation 2009-01-12 08:28:49 -06:00
Samuel Lebeau b2597ece0c Start PDoc integration. 2009-01-12 08:27:43 -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 bd1d3fa1ff Change the way we detect that an object of key/value pairs has been passed to Element#store. 2008-12-16 13:19:23 -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 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 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 1d617df4df Avoid using arguments.callee in string.js. 2008-12-11 17:05:24 +01:00
Tobie Langel 1cda280a72 Avoid using arguments.callee in dom.js. 2008-12-11 17:05:09 +01:00
Tobie Langel b74eeeb757 Make Element constructor creation cleaner. 2008-12-11 17:04:13 +01:00
Tobie Langel 51d0181d29 Avoid using arguments.callee in events.js. 2008-12-11 17:03:53 +01:00
Tobie Langel 7f6b3e81a2 Overwrite Array#concat method for handling the arguments object in Opera. 2008-12-11 17:03:10 +01:00
Tobie Langel 1395330440 Fix Array errors in Opera. 2008-12-11 17:00:45 +01:00
Tobie Langel e5f7cac36f Avoid shadowing named functions. 2008-12-11 16:55:02 +01: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 1324e4abe0 Refactored class.js. 2008-12-11 12:06:22 +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 dad88f6ebf Refactored event.js. 2008-12-11 11:56:38 +01:00
Tobie Langel 1aacbd692c string.js rewrite. 2008-12-11 11:50:51 +01:00
Tobie Langel 535d4e6d18 function.js rewrite. 2008-12-11 11:49:41 +01:00
Tobie Langel 0b646c01c6 Refactor object.js. 2008-12-11 11:46:42 +01:00
Tobie Langel 48f5ff2072 Split ajax.js. 2008-12-11 11:45:10 +01:00
Tobie Langel fe35c941eb Split src code into lang, dom and ajax directories. 2008-12-11 11:43:15 +01:00
Tobie Langel 6850979395 Split base.js up. 2008-12-11 11:42:15 +01:00
Tobie Langel 616319377f Extract the template class out of string.js and into its own file. 2008-12-11 11:35:20 +01:00
Tobie Langel 314e161c57 Reorganize range.js. 2008-12-11 11:34:19 +01:00
Tobie Langel 23b760865a Reorganize number.js. 2008-12-11 11:34:05 +01:00
Tobie Langel 75440aa98d Reorganize hash.js. 2008-12-11 11:33:45 +01:00
Tobie Langel 92eac6f1f6 Reorganize enumerable.js. 2008-12-11 11:33:31 +01:00
Tobie Langel d3e833c48e Reorganizing array.js source code. 2008-12-11 11:31:36 +01:00
Thomas Fuchs deb47c6361 Workaround a JavaScript exception in Opera. 2008-09-28 21:12:15 +02:00
Tobie Langel 6416d28080 Fix Event#element throwing errors for events missing a currentTarget. 2008-09-09 11:57:59 -07:00
Tobie Langel be8508f2a1 Event#element clean-up. 2008-09-07 20:50:35 -07: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 4308f376ff Update copyright dates in HEADER. 2008-09-07 19:37:54 -07:00
Andrew Dupont d88c25fd47 Ensure Object.isElement handles "falsy" values properly. 2008-09-07 19:26:21 -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 637134651a Fix IE's missing negated attribute operator in the selector class. 2008-09-07 18:50:43 -07:00
Andrew Dupont 34798f0d74 Fix Opera 9.5 strict issue that swaps documentElement.clientHeight with body.clientHeight. 2008-09-07 18:49:45 -07:00
jdalton 1d0fb77ec3 Force Element.Methods.Simulated.hasAttribute() to return a boolean value. 2008-09-07 16:30:11 -07:00