aboutsummaryrefslogtreecommitdiffstats
path: root/src/jqLite.js
AgeCommit message (Collapse)Author
2013-09-25docs(jqLite): fix typolorint
Closes #4105
2013-08-12fix(jqLite): return array from multi select in val()Eric Hagman
2013-08-07fix(jqLite): forgive unregistration of a non-registered handlerPawel Kozlowski
2013-07-18docs(jqLite): document "$destroy" eventPete Bacon Darwin
2013-07-03fix(jqLite): prepend array in correct orderJoao Sa
Match jQuery behavior when prepending array into empty element
2013-05-23fix(jqLite): correctly monkey-patch core jQuery methodsMichał Gołębiowski
When real jQuery is present, Angular monkey patch it to fire `$destroy` event. This commit fixes two issues in the jQuery patch: - passing a selector to the $.fn.remove method (only fire `$destroy` on the matched elements) - using `$.fn.html` without parameters as a getter (do not fire `$destroy`)
2013-04-29fix(jqLite): correct implementation of mouseenter/mouseleave eventgockxml
Implement mouseenter/mouseleave event referring to http://www.quirksmode.org/js/events_mouse.html#link8 and jQuery source code(not dependent on jQuery). The old implementation is wrong. When moving mouse from a parent element into a child element, it would trigger mouseleave event, which should not. And the old test about mouseenter/mouseleave is wrong too. It just triggers mouseover and mouseout events, cannot describe the process of mouse moving from one element to another element, which is important for mouseenter/mouseleave. Closes #2131, #1811
2013-04-11docs(jqLite): clarified that children/parent do not support selectorsChristoph Burgdorf
2013-01-20docs(jqLite): fix typosergiopantoja
2013-01-09fix(jqLite): children() should only return elementsPete Bacon Darwin
The jQuery implementation of children only returns child nodes of the given element that are elements themselves. The previous jqLite implementation was returning all nodes except those that are text nodes. Use jQLite.contents() to get all the child nodes. The jQuery implementation of contents returns [] if the object has no child nodes. The previous jqLite implementation was returning undefined, causing a stack overflow in test/testabilityPatch.js when it tried to `cleanup()` a window object. The testabilityPatch was incorrectly using children() rather than contents() inside cleanup() to iterate down through all the child nodes of the element to clean up.
2013-01-08fix(jqLite): make next() ignore non-element nodesKeyamoon
next() is supposed to return the next sibling *element* so it should ignore text nodes. To achieve this, nextElementSibling() should be used instead of nextSibling().
2012-11-26style(jqLite): better variable namesIgor Minar
selector => cssClasses
2012-11-26fix(jqLite): fire $destroy event via triggerHandlerIgor Minar
in jQuery 1.8.x the data() data structure is changed and events are not accessible via data().events. Since all we need is to trigger all event handlers, we can do so via triggerHandler() api instead of mocking with the internal jQuery data structures. This fix was originally proposed by PeteAppleton via PR #1512. Closes #1512
2012-11-26feat(jqLite): add triggerHandler()Igor Minar
we need triggerHandler() to become jQuery 1.8.x compatible. this is not fully featured triggerHandler() implementation - it doesn't bother creating new DOM events and passing them into the event handlers. this is intentional, we don't need access to the native DOM event for our own purposes and creating these event objects is really tricky.
2012-08-30fix(jqLite): better support for xhtmlIgor Minar
it turns out that some stuff doesn't work in xhtml as it does in html. for example   can't be innerHTML-ed and auto-closing of elements doesn't work. the reporter of the referenced issue claimed that innerHTML vs text on script made a difference but that doesn't appear to be true in my testing. I'm not including test for this because testacular doesn't currently run tests in xhtml yet. Closes #1301
2012-06-12docs(*): simplify doc urlsIgor Minar
we now have two types of namespaces: - true namespace: angular.* - used for all global apis - virtual namespace: ng.*, ngMock.*, ... - used for all DI modules the virual namespaces have services under the second namespace level (e.g. ng.) and filters and directives prefixed with filter: and directive: respectively (e.g. ng.filter:orderBy, ng.directive:ngRepeat) this simplifies urls and makes them a lot shorter while still avoiding name collisions
2012-06-08chore(jqLite): performance reorderingMisko Hevery
2012-05-24fix(jqLite): don't eat event exceptionsMisko Hevery
JQuery does not catch exceptions either, and just lets them pass. This allows the exception to be shown in console.
2012-05-17fix(jqLite): have same expando format as jQueryMisko Hevery
2012-05-14fix(jqLite): .data()/.bind() memory leakMisko Hevery
Since angular attaches scope/injector/controller into DOM it should clean up after itself. No need to complain about memory leaks, since they can only happened on detached DOM. Detached DOM would only be in tests, since in production the DOM would be attached to render tree and removal would automatically clear memory.
2012-05-03fix($compile): fix replaceWithIgor Minar
the old implementation didn't reattach jquery/jqlite data which caused things like to be lost I tried various implementations but it appears that by reattaching the data to the new node by copying the expando property is the most reliable of all.
2012-05-03feat(jqLite): support data() getter and data(obj) setterIgor Minar
... just like jquery does
2012-05-03style(jqLite): clean up the codeIgor Minar
2012-04-20fix(events): include ie8 in extra event property resetMisko Hevery
2012-04-20fix(mouseenter): FF no longer throws exceptionsMisko Hevery
2012-04-10chore(*): remove dead code and fix code style issuesIgor Minar
2012-04-09fix(docs): change all directive references to use the normalized namesIgor Minar
2012-03-22feat(jqLite): make injector() and scope() work with the document objectIgor Minar
For typical app that has ng-app directive on the html element, we now can do: angular.element(document).injector() or .injector() angular.element(document).scope() or .scope() instead of: angular.element(document.getElementsByTagName('html')[0]).injector() ...
2012-03-19bug(ie7): incorrectly set all inputs to disabledMisko Hevery
In ie7 all of the input fields are set to readonly and disabled, because ie7 enumerates over all attributes even if the are not declared on the element.
2012-03-19fix(compiler): allow transclusion of root elementsMisko Hevery
Fixed an issue where a directive that uses transclusion (such as ngRepeat) failed to link if it was declared on the root element of the compilation tree. (For example ngView or ngInclude including template where ngRepeat was the top most element).
2012-03-19feat(jqLite): add .controller() methodMisko Hevery
extend JQuery with .controller() method which retrieves the closest controller for a given element
2012-03-13f(compile): boolean attributes too agresiveMisko Hevery
- compiler would rewrite boolean attributes on all elements. This is too aggressive and interferes with some third-party frameworks
2012-03-08docs(jqlite): add docs for wrap()Igor Minar
2012-02-23fix(jqLite): set event's monkey patched methods to null (on IE7)Vojta Jina
2012-02-21feat($compile): support compiling text nodes by wrapping them in <span>Misko Hevery
2012-02-21feat(mouseenter/mouseleave): emulating ie eventsMisko Hevery
2012-02-05fix(jqLite): fix memory leaking in IE8 (remove monkey patched methods on Event)Vojta Jina
These methods cause IE8 holds the whole jqLite in the memory, even when page is reloaded. jqLite's cache keeps element's data (event handlers, attached scopes, injector, etc…), so almost all used memory is never released in IE8. jQuery creates its own Event object (wrapper around native Event) instead.
2012-01-25cleanup($scope): remove $$scope ref.Misko Hevery
2012-01-25docs(compiler): update the compiler docsMisko Hevery
2012-01-25refactor(directives): connect new compilerMisko Hevery
- turn everything into a directive
2012-01-25add($compile): add compiler v2.0 - not connectedMisko Hevery
2012-01-25feat(jqLite): add contents()Misko Hevery
2012-01-16feat(jqLite): added injector() helper methodIgor Minar
2011-12-05fix(jqLite): JQLiteHasClass should work even when minifiedIgor Minar
closure compiler is smarter than we expected and drops the unused fn argument - this breaks the meta-programing logic of jqLite. The fix special cases JQLiteHasClass since its the only fn that needs this treatment in a way that is minification-proof.
2011-11-14refactor(api): remove type augmentationMisko Hevery
BREAK: - remove angular.[Object/Array/String/Function] - in templates [].$filter(predicate) and friends need to change to [] | filter:predicate
2011-10-30docs(jqlite): add missing methodsVojta Jina
2011-10-20fix(radio): allows data-binding on value property. Closes#316Misko Hevery
2011-10-12fix(jqLite): attr for boolean attribute should lowercase valueIgor Minar
2011-10-11chore(formating): clean code to be function() {Misko Hevery
2011-10-11feat(forms): new and improved formsMisko Hevery