Skip to content
This repository
  • 125 commits
  • 36 files changed
  • 18 contributors
Aug 03, 2011
Mislav Marohnić fix filter() and is() for elements without parentNode d24e26a
Mislav Marohnić fix anim() callback being executed in the context of element
fixes #250
Aug 05, 2011
Sasha Koss Added failing assertion for issue #209 b19bb98
Sasha Koss Allow to set timeout for ajax request (closes #209) 562d79d
Sasha Koss More assertions for #209 6ef94c0
Sasha Koss Added more info to $.ajax docs ecf9ff0
Aug 08, 2011
Sasha Koss Added failing assertion to keyframe animation start via $.fn.anim c2b3ea1
Sasha Koss Added ability to run keyframe animations via $.fn.anim 8e8f2ca
Zoz trim whitespace from html fragment when using $("<xxx>...</xxx>") to …
…create dom element
Sasha Koss Merge pull request #252 from zoz/master
Trim whitespace from html fragment when using $("<xxx>...</xxx>") to create dom element
Aug 11, 2011
Sasha Koss Bundle Jasmine gem 14071a2
Sasha Koss Setup rake with bundler 41c24ee
Sasha Koss Bundle rake ebafc9d
Sasha Koss Init Jasmine a50f962
Sasha Koss Write example spec for ajax.js b3f6cfe
Sasha Koss Remove example jasmine's files 197a072
Sasha Koss Install mock-ajax.js 2e61314
Sasha Koss Write adaptation for Zepto in mock-ajax.js 47e7a7f
Sasha Koss Allow to specify xhr transport fd81b81
Aug 12, 2011
Sasha Koss Fix typo in mock-ajax helper 0cee6ae
Sasha Koss Make mock-ajax for Zepto finally works 21976ef
Sasha Koss Allow to specify xhr transport 9162a1d
Sasha Koss Basic examples for all ajax functions 04af6bc
Aug 14, 2011
Fixing rails compatibility in ajax requests with mimetype 'applicatio…
…n/json' that return an empty body (as in "head :ok")
Aug 15, 2011
Sasha Koss Use proper animation end event f683448
Thomas Fuchs Merge pull request #256 from SocialStay/zepto

In Rails, specifying "head :ok" or "render => :nothing" returns a single space instead of an empty string in the response body.  This commit checks xhr.responseText against the single space case.  Tests included!
Thomas Fuchs merge #256 and adapt test condition 28a9087
Aug 17, 2011
Sasha Koss Failing assertion for #258 c354f88
Sasha Koss Fix issue #258 0362528
Sasha Koss Added failing assertions for pull request #257 d4128b8
Alex Wilson Added special initialization of mouse events 406bd31
Sasha Koss Rename special_events to specialEvents fba76a0
Sasha Koss Fixed assertion for #257 594f22a
Sasha Koss Fix code style of specialEvents defenition e0fd490
Sep 01, 2011
Mislav Marohnić fix `return false` cancels event even in delegated handlers 2a7af98
Mislav Marohnić refactor $.param() so it also accepts data from serializeArray() 9e42ee4
Sep 02, 2011
Mislav Marohnić enable checking `event.defaultPrevented` after trigger()
This enables us to create a custom event object, trigger it and check
if any of its handlers cancelled it. Essential stuff.

WebKit implements `defaultPrevented` but in Firefox it's missing.
Mislav Marohnić refactor attr() to support empty attributes and more input field types
 - for empty attributes (e.g. `<div data-empty>`) it now returns an empty string
 - for non-existent attributes it now returns null instead of undefined
 - attr('value') now uses the `value` property directly for all input
   types, not just `<input type="text">`
Mislav Marohnić val(value) now accepts a function argument 1f90bcb
Romain Ruetschi add-on with a new $ method which can store non-scalar values 285471b
Mislav Marohnić simplify Readme docs for the basic data() method 2cfd0f0
Mislav Marohnić improve extended data() functionality
 - original data() method isn't publicly accessible as dataAttr() anymore
 - the setter method never writes to the "data-*" DOM attribute,
   not even for scalar values
 - the setter method now affects every element in the collection
 - the setter method now accepts function argument for value
 - fixes the getter method in case of empty collection
Mislav Marohnić fix data() setter; data() getter w/out arguments returns all data 4305a2d
Sep 03, 2011
Mislav Marohnić `rake concat` now accepts arguments to modify which components get in…

Arguments are a colon-separated list of component names. If a name
starts with a minus sign ("-"), that component will be excluded.

Example use:

  rake concat                # default distribution
  rake concat[data:gesture]  # include "data" and "gesture" components
  rake concat[assets:-fx]    # include "assets" but exclude "fx"
Alex Wilson Implemented .andSelf cec28ca
Sasha Koss Added failing assertion for #262 6cd3cbf
Sasha Koss Merge branch 'arexkun-master' e85cb7e
Sasha Koss Added $.ajaxSettings specs a51f876
Sep 04, 2011
Sasha Koss Added basic $.ajax specs a8cc48f
Sasha Koss Specs for $.ajax callbacks 777126b
Sasha Koss Added specs for $.get aeb6680
Sasha Koss Bundle jasmine-headless-webkit gem bbf0c2f
Sasha Koss jasmine-headless-webkit won't work without setting options in jasmine…
Sasha Koss Clean up jasmine.yml file 4edac6f
Sasha Koss Specs now works in browser and headless-webkit f47e446
Sasha Koss Fix bug in minified version, thanks for @ranbena (closes #164) a6bf149
Charles Fulnecky correct Ajax timeout behavior
Before the Ajax timeout behavior was this:
 - wait "timeout" ms;
 - check the results of the beforeSend method;
 - abort if the result is false, otherwise send.

The end result was that the request is simply delayed for "timeout" ms.
This is behavior is useless.

Now the timeout behavior is:
  - send the Ajax request right away;
  - if it finishes before timeout, nothing special happens;
  - if "timeout" ms passes before the request has finished,
    cancel the request, call the "error" handler and ensure
    that no further ajax callbacks get called.

Properly fixes #209, closes #253
Mislav Marohnić refactor Ajax sending with regard to timeout f1ef348
Mislav Marohnić improve $.param(), add support for "traditional" (shallow) mode
The second argument to $.param() is now a boolean that activates
"traditional" serialization, i.e. without brackets for array keys:

  $.param({ a:[1,2,3] }, true)  //=> "a=1&a=2&a=3"

The refactored method now also supports objects nested inside arrays
when in normal (recursive) serialization mode.

Closes #208
Sep 05, 2011
Ran Ben Aharon add abort() functionality for $.ajaxJSONP db82675
Mislav Marohnić ensure $.get(), $.post(), $.getJSON() all return xhr objects e7bc9fe
Mislav Marohnić test ajax timeout behavior 6b7f9ad
Mislav Marohnić refactor JSONP fetching; ensure that <script> elements are cleaned up 0b183b2
Mislav Marohnić support "timeout" setting for JSONP b53c104
Mislav Marohnić fix functionality of slightly outdated examples 87bd885
Sep 06, 2011
Linus Unnebäck add "context" option to $.ajax
"context" is the scope in which all Ajax callbacks will be executed.
The default is null, which means default context is the window object.
Sep 08, 2011
Matt Powell fix 2nd argument to toggleClass(name, bool)
The boolean parameter indicates whether the class should be added or removed.
Mislav Marohnić performance boost for $.qsa(), Zepto's main query function
Uses regexes to test whether one of the following is more appropriate:
 - getElementById
 - getElementsByTagName
 - getElementsByClassName

Performance was tested doing various queries on a page with a large
number of nested elements.

Measured overall performance improvement:
 - iOS (iPhone 3Gs): 17%
 - Safari:           33%
 - Chrome:           38%
 - Firefox:          96%

Closes #180
Sep 10, 2011
Mislav Marohnić fix delegate(), one() handlers receiving multiple data arguments
Refactor delegate() & one() to fix how they forward data arguments to
the event handler they are wrapping.

Also fixes `return false` in one().
Mislav Marohnić ensure that event test handlers are unbinded after each test
This required grouping events test together in a separate test case,
resulting in a massive diff.
Mislav Marohnić event methods now support event names & handlers passed as an object
    click: function(e) { ... },
    keypress: function(e) { ... }

Closes #199
Sep 11, 2011
Mislav Marohnić retouch test suites, display the test run outcome on the page
Also looks decent on mobile
Mislav Marohnić fix accidental globals d961e2c
Sep 13, 2011
Mislav Marohnić fix $.Event(type, {bubbles:false}) cross-browser
Opera doesn't allow event.bubbles to be set directly as a property.
Mislav Marohnić fix checking of leaked globals in Opera
In Opera, every DOM element with an ID has window[id] pointing to id.
Ignore this; don't treat them as global variables.
Mislav Marohnić tweak detect.js implementation and improve tests d76c4ae
Aeron Glemann add $.fn.insertBefore() & insertAfter()
insertBefore and insertAfter are inverse operators of before() and
Aeron Glemann slim down replaceWith() 4b85e47
Sep 19, 2011
Mislav Marohnić improve $.fn.width() & height() to work on window & document objects 1edbad5
Mislav Marohnić enable $.fn.anim() in Firefox, Opera, and IE 069569b
Sep 20, 2011
Mislav Marohnić implemented animated show(), hide(), fadeIn/Out methods in an add-on
Overloads show(), hide() and toggle() to be optionally animated.
Adds fadeIn(), fadeOut(), fadeToggle() and fadeTo() methods.

Uses scale3d transform on browsers that support it.

Closes #264
Mislav Marohnić fadeOut() sets "display:none" on element upon completion 23907bb
Mislav Marohnić fix `return false` in delegate event handlers
This was a regression in 9610403
Mislav Marohnić improve $(document).ready(), pass Zepto as 1st argument to handlers
Now it also fires immediately during "interactive" state.

Closes #159, closes #278
Oct 09, 2011
Matthias Wilhelm remove duplicate ID in iphone example 10ff6a7
replaceWith, wrap, before, after: make all of them noop on fragments
Nodes in a fragment have no parent so these operations aren't possible.
Making them a noop ensures they don't error out.
Mislav Marohnić add tests for before() & after() behavior on fragments 96681a7
Mislav Marohnić unified event handling with fn.on() & off()
  $('el').on(event, handler)
  $(document).on(event, selector, handler)

Matches jQuery 1.7 API.

Closes #286
Oct 15, 2011
Messiahs Change viewport (from seperator ; to ,) 640b321
Thomas Fuchs Merge pull request #290 from Messiahs/patch-1
Change viewport (from seperator ; to ,)
Oct 17, 2011
Felix Gnass Fix: Support insertion of CharacterData nodes
The original test for arrays yields false positives, since CharacterData elements also have a length property. Hence $('body').append(document.createTextNode('foo')) throws a TypeError.
Oct 20, 2011
Alex Wilson Modify adjacency operators so the content of a script node is evaluat…
…ed only if it has no type attribute or the type attribute is 'text/javascript'
Alex Wilson Add tests for preventing the evaluation of non-javascript script elem…
Oct 25, 2011
Sasha Koss Merge branch 'master' into jasmine
Sasha Koss Rewrite README in markdown (source now highlighted) 29173b0
Sasha Koss Merge branch 'jasmine' 9776d8b
Josh Faul Added 'name' variable to line 9 to prevent global variable leak on li…
…ne 198: "for (name in settings.headers)..."
Sasha Koss Merge pull request #296 from jocafa/master
The variable "name" is being leaked into the global scope.
Sasha Koss Merge pull request #294 from arexkun/master
Fix for #293
Sasha Koss Merge pull request #291 from fgnass/fix_insert_text_nodes
Fix: Support insertion of CharacterData nodes
Oct 27, 2011
Sasha Koss Export Zepto variable to global scope (closes #297) ef686f3
Oct 30, 2011
Mislav Marohnić add "global" Ajax events as well as an extra "ajaxBeforeSend" event
"Global" events aren't really global because Zepto doesn't support them
yet. Instead they are simply fired on `document`.

Ajax lifecycle is now:
  1. ajaxStart (global) – only fired if there are no active requests
  2. beforeSend callback (cancellable)
  3. ajaxBeforeSend (global, cancellable)
  4. ajaxSend (global)
  5. success/error callback
  6. ajaxSuccess/ajaxError (global)
  7. complete callback
  8. ajaxComplete (global)
  9. ajaxStop (global) – only fired if this is the last active request

Also added:
  - $.active (0) – number of active requests
  - $ (true) – whether global events will fire

If Ajax "context" element is given, "global" events are fired on this
element instead of `document` and they bubble.
Mislav Marohnić fix jasmine YAML config 6cfd096
Mislav Marohnić fix jasmine Ajax spec 71f0130
Oct 31, 2011
Mislav Marohnić `rake test` runs existing browser tests in headless WebKit b5fe339
Mislav Marohnić make `rake test` also run jasmine specs 376c519
Mislav Marohnić improve form serialization
 - ignore disabled elements
 - ignore buttons ("submit", "reset", "button")
Mislav Marohnić don't force jasmine-headless-webkit on everyone d284ed0
Mislav Marohnić shorter default timeout for tests run in headless webkit 3dcdb20
Mislav Marohnić downgrade some test runner info statements to debug level a9d554d
Mislav Marohnić more solid async Ajax tests
Be careful that callbacks/events for one Ajax request don't occur after
the test case where it originated already finished.
Mislav Marohnić don't set X-Requested-With header for cross-domain Ajax
Closes #300
Mislav Marohnić fix turning off global Ajax events 0e0245f
Nov 03, 2011
Mislav Marohnić make first() & last() useful for non-DOM collections
  $(['a', 'b']).last()  //=> 'b'

Closes #298
Mislav Marohnić treat status=0 as Ajax error unless over "file:" protocol
Closes #283
Yuest Wang use window.pageXOffset/pageYOffset instead of body.scrollLeft/scrollTop
iPhone 3 with iOS 4.1 support
Thomas Stachl assets.js remove() override: check if node has a parent 7fe2438
Mislav Marohnić remove unnecessary $(document).ready() in gesture.js
References #303
Mislav Marohnić $ is automatically true when no CSS transitions support 6e26ef1
Mislav Marohnić change default transition duration from 0.5s to 0.4s 699ab98
Mislav Marohnić add a compatible $.fn.animate() method
Difference between animate() and anim():
 - animate() receives duration in milliseconds instead of seconds
 - animate() can receive an parameter hash as 2nd argument with keys:
   "duration", "easing", "complete"

anim() is now informally deprecated.
Mislav Marohnić add note about supported browsers in README 08d2ecf
Mislav Marohnić minor README tweaks af5410c
Mislav Marohnić fix package task 6eba304
Mislav Marohnić release v0.8 984dcfe