Well, the MochiKit.Query module is almost finished. Actually, it only
provides DOM related functions. I too don't like chained API for
general development, but I think it's much more natural for DOM
related operations.

Here are what it provides (see jQuery documentation ;) )

Core functions:

    - length
    - size()
    - get(index)
    - index(nodeObj)

Iter/Traversing functions:

    - each(callback[, self])
    - map(callback[, self])
    - filter(callback[, self])
    - is(expr)
    - not(expr)
    - eq(expr)
    - slice(start[, end])
    - children([expr])
    - contents([expr])
    - find(expr)
    - next([expr])
    - nextAll([expr])
    - prev([expr])
    - prevAll([expr])
    - siblings([expr])
    - andSelf()
    - end()

DOM & Style functions:

    - attr([value])
    - removeAttr(name)
    - addClass(name)
    - hasClass(name)
    - removeClass(name)
    - toggleClass(name)
    - html([value])
    - text([value])
    - val([value])
    - css(name[, value])
    - position([options])
    - offset()
    - height()
    - width()
    - outerHeight()
    - outerWidth()
    - append(...)
    - appendTo(...)
    - prepend(...)
    - prenendTo(...)
    - after(...)
    - insertAfter(...)
    - before(...)
    - insertBefore(...)
    - wrap(content)
    - wrapAll(content)
    - wrapInner(content)
    - replaceWith(content)
    - replaceAll(content)
    - empty()
    - remove([expr])
    - clone([events])

Event binding:

    - bind(type, callback[, self])
    - unbind(type[, callback, self])
    - trigger(type[, event])

    + shortcut functions to common DOM events like `click, mouseover
etc`

Effect functions:

    - animate(how[, options])
    - hide(how[, options])
    - show(how[, options])
    - hover(fnOver, fnOut)
    - hoverClass(name)

    + shortcut functions to all MochiKit.Visual effects

* jQuery calls the callback in the context of current element while
MochiKit.Query invokes the callback in it's original context. So the
callback signature are different then jQuery. Also, the effect
functions are totally different then jQuery, uses MochiKit.Visual
effects.

  jQuery('div').each(function(i, elem){
    // this refers to the current dom element
  });

  MochiKit.Query('div').each(function(elem, i) {
    // this refers to the callback function or object to which it's
bound
  });

  jQuery('div').click(function(evt){
    // this refers to the current dom element
  });

  MochiKit.Query('div').click(function(evt){
    // this refers to the callback function or object to which it's
bound
  });

The proposed MochiKit.Remote will provide much more clear API and will
allow much better control on the requests.

1. MochiKit.Remote.request(options)

    options.url - the url
    options.data - the request params
    options.type = GET or POST
    options.contentType - the datatype of request contents
    options.async = default true, false for sync request
    options.queue = queue management options for async requests

2. MochiKit.Remote.get(url[, data, options])
3. MochiKit.Remote.post(url[, data, options])
4. MochiKit.Remote.JSON.get(url[, data, options])
5. MochiKit.Remote.JSON.post(url[, data, options])

All these functions are similar to MochiKit.Async functions and
returns MochiKit.Async.Deferred.

Regards
..
Amit Mendapara

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"MochiKit" group.
To post to this group, send email to mochikit@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/mochikit?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to