Releasing DOMAssistant 2.6 – overall fastest CSS selectors, plugins and more

February 20th, 2008 by Robert Nyman

Today marks the beginning of a new stage for DOMAssistant. It is time for version 2.6 to see the lights of day, and it is packed with improvements, features and an infrastructure to back it up!

What’s new

Overall fastest CSS selector performance in the market

One of things we have focused very hard on with this release is performance. Performance is vital in any web site or application, but it is often overlooked, or at least underrated. Therefore, a lot of work has gone into fine-tuning the CSS selectors in DOMAssistant, to give results as fast as possible, while also making sure the selectors return accurate matches.

I’m proud to say that DOMAssistant currently has the fastest overall CSS selector performance, where it is noticeably faster than the other JavaScript libraries in all web browsers, but Internet Explorer. In Internet Explorer, it is the second fastest (marginally faster than jQuery), behind Ext JS.

Take the Slickspeed test to see for yourselves (my opinions about the Slickspeed test)!

Using querySelectorAll and native getElementsByClassName

Safari has implemented querySelectorAll in their latest nightly builds of WebKit, which means that it will be in an upcoming version of Safari. It is a native support (and in a W3C draft) for using CSS selectors to select elements, and the results are astounding! Download a nightly build of WebKit (don’t worry, it won’t mess up existing installations) and hold on to something!

Upcoming versions of Safari, Firefox and Opera will support getElementsByClassName natively, so DOMAssistant utilizes that where it’s available.


Where querySelectorAll and getElementsByClassName aren’t available, DOMAssistant resorts to XPath to select elements, which is an approach that also has very impressive performance results, not to mention native web browser support. The only web browser not supporting XPath is Internet Explorer, where the only option is “regular” looping through elements.


The idea is to keep the DOMAssistant core functionality as small, slimmed and optimized as possible, while we definitely respect and understand the needs other web developers, as well as us, have regarding extending that functionality. Now DOMAssistant offers an extremely easy-to-use plugin functionality, which hooks in on top of the DOMAssistant core.

For example, you might need a script to validate all the input fields in a document, if they have the class mandatory. Just customize your own validate function and use the plugin approach to add it to the DOMAssistant core. For example, your syntax can then look like this:

$("#contact-form input.mandatory").validate();

Read more about how to do it in How to create a plugin.

All plugins created will be publicly listed in the plugins page, sorted into categories so you can find the type of plugin you’re looking for. If you feel a certain plugin is missing, feel free to submit your own plugin.

The $$ method

In earlier versions, there has been some confusion about what to send in to the $ method. It would accept plain ids, CSS selectors and objects. However, by supporting the mix of ids and CSS selectors, it ruled out sending in just a certain tag, since it would then be interpreted as an id rather than a CSS selector.

With the new plugin structure in place as well, this change was inevitable. It had to become consistent so everyone could start adding their own functionality, and get back expected results.

Another factor was that there are times when there’s a need to work directly with properties and methods on the native DOM element (e.g. offsetHeight, style etc), whereas the $ method returns a DOMAssistant collection of elements mainly intended for DOMAssistant methods and chaining.

Therefore, we have decided to introduce the $$ method, which returns a direct DOM reference, but with all the extra DOMAssistant methods applied to it as well. So, to summarize:

The $ method

Accepts either a CSS selector or an object reference. E.g. $("#container .external-links"), $(document). Fails silently if you try to call a method when the selector didn’t return any matches; i.e., $("input[type=text]").addClass("text-fields") won’t throw an error trying to call the addClass method, even if the $ selector didn’t match any elements.

Returns: A collection of one or several nodes for CSS selectors/object reference when an object was sent in.

The $$ method

Accepts a string parameter, expected to be the id of an element. E.g. $$("container"), $$("navigation"). Will throw an error if you try to call a method, if there wasn’t any match.

Returns: A direct reference to the DOM element.

Backwards compatibility issue

The result of this is that if you have used the $ method and only passed in ids, then it will not work with this new release. It will be regarded as a CSS selector and element names. I am truly sorry for this, but it was vital for the future of DOMAssistant.

But fret not! The very simple solution for those scenarios is to just replace $ with $$, and it will work exactly as before! So, make the change now and you should be DOMAssistant future compatible.

Support for multiple simultaneous AJAX calls

Before, the get and post methods would just allow one call at the time, and if another was started before the previous had finished, the previous call got cancelled. This has now been addressed, so you can have as many simultaneous calls as you want.

Bug fixes

  • Fix for addContent method calls on a collection.
  • Fix for replaceContent method calls on a collection.
  • Fix for id bug in Internet Explorer and Opera, where it matched elements with that name as well (id and name mixups bug).
  • Removed unnecessary attribute removal in the replaceWithAJAXContent method for the AJAX module.
  • (Re)Added support for XUL events (DOMMouseScroll etc) with the addEvent method (this fell out in between versions).


Talking about infrastructure, I mean what has happened around the DOMAssistant JavaScript library.

Discussion forum

Something that has been asked for numerous times is a public forum where peole can ask questions about or discuss DOMAssistant. Now there is a DOMAssistant discussion forum where anyone can get help, or discuss how to implement a certain thing

The DOMAssistant Team

A DOMAssistant team has been formed, and its tasks consist of testing DOMAssistant, helping out in the discussion forum, evangelizing, analyzing and helping out with the code itself and general advisory functions. They are invaluable to DOMAssistant, and the team members are:

Offline documentation

Something which has been requested is the ability to download the DOMAssistant documentation to read it through or print it, without having to use the DOMAssistant web site itself. Now there’s a PDF download in the documentation section to cater to those needs.

Web site and blog

Previously, DOMAssistant was hosted at, but it had to stand on its own. It also features this blog to talk about DOMAssistant or general JavaScript topics, and to make announcements about releases.

What about animations?

I’ve gotten a lot of feedback from people saying that they love DOMAssistant, but now and then they have a need to use animations in a web page. My philosophy is to have as little as possible in the DOMAssistant core code, I’d rather take things out than add more methods, and I don’t regard animation functionality as being important enough to be in there.

However, of course there’s a need for animations, and just as we speak, Pelle of the DOMAssistant team is working hard on putting together a plugin to DOMAssistant with just that. Stay tuned, we’ll alert you in the blog as soon as it’s available.

Till then, feel free to extend DOMAssistant with your own plugin! :-)

Try DOMAssistant out!

Now download DOMAssistant and try it out. Write your own plugins and enhance your existing web sites!

100 Responses to “Releasing DOMAssistant 2.6 – overall fastest CSS selectors, plugins and more”

  1. Can Ijust say ѡhat a relieff tto
    discover ɑn individual ԝҺο аctually ƙnows ԝhat they’гe discussing ߋѵer tҺе internet.
    Υοu certainly realize Һow tօ bring
    ɑ ρroblem tο light ɑnd maoe itt іmportant.
    A llot more people should reaad this and understand tɦіs ѕide οf tɦе story.I ѡаs surprised ƴοu aren’t moee popular ѕince уou сertainly have tɦе gift.

  2. Mines and elixir routinely harvest the currencies once positioned within the floor.
    While it definitely didn’t have the opening weekend of the
    similar ’300′ ($70. He does show up for the gig but he and Gunnar almost come
    to blows before they go on stage.

    Have a look at my weblog :: Triche Clash Of Clans (Http://Tricheclashofclans.Com/)

  3. Good post! We will be linking to this particularly great
    article on our website. Keep up the great writing.

    Review my blog … Carpet Installation Fort Lauderdale

  4. It’s going to be finish of mine day, however before ending I am reading this wonderful post to improve my know-how.

  5. This skill encourages you to use guns with smaller clips, which generally is advantageous to this
    build anyway. You will miss a lot, but when you do hit,
    your damage will be insanely high. Release the Beast (B+) – Release
    the Beast is a great skill, but it is incredibly hard to actually use.
    What can be garnered from available information ahead of its release
    date, the visual style and humorous dialogue are going to be back, but what is going
    to set this apart through its predecessor. Finally, if your action skill can be
    used conveniently, spend about half an hour killing enemies while it
    is active. Prematurely reloading a second time ends this state.

    Some video games have provided improvement in “Cognitive Flexibility”, which is the ability to switch
    quickly from one task to another. Sirens, kill a mob with
    your action skill and you’ll get “Truly Outrageous”.

    The game looks awesome so far and will most likely deliver what is to be expected.
    Many of these are points you’ll probably do normally in the program of
    the game so you can anticipate a fairly stable flow of Badass
    Tokens between personality degrees.

    Here is my weblog; borderlands 2 cheat engine

  6. Mitchel says:

    Hello, its fastidious piece of writing about media print, we all understand
    media is a enormous source of data.

  7. Thank you for the good writeup. It in fact was a amusement account it.
    Look advanced to more added agreeable from you! However,
    how can we communicate?

    Look at my webpage – North Myrtle Beach Fishing Charters

  8. inflicts says:

    I like the helpful information you provide in your articles.
    I’ll bookmark your blog and check again here regularly.
    I’m quite sure I’ll learn a lot of new stuff right here!

    Good luck for the next!

    Look at my page inflicts

  9. If you are going for best contents like me, only pay a
    quick visit this web page daily because it provides feature contents, thanks

    Feel free to visit my web site … Arlington Roofing Damage

  10. Amazing blog! ӏs your theme custom made оr ԁid ʏοu download іt from ѕomewhere?
    A design like уοurs ԝith а few simple adjustements ѡould гeally
    make my blog shine. Ρlease lеt mе κnoѡ ԝҺere ʏou ɡot
    yolur theme. Ƭhanks

    Аlso visit my web-site: bandar bola –,

  11. Thanks for one’s marvelous posting! I genuinely enjoyed reading it, you
    happen to be a great author. I will be sure to bookmark your blog and
    will come back from now on. I want to encourage you to continue your great posts,
    have a nice day!

  12. apartemen says:

    It is actually a ցreat and helpful piedce οf
    info. I’m satisfied that үߋu shared tɦіs helpful
    info with us. Please κeep uus սp tߋ Ԁate like tҺis.
    Thwnk ʏߋu for sharing.

    Μy web-site :: apartemen

  13. google says:

    Right away I am going to do my breakfast, once having my breakfast coming over again to read further

    Here is my web page :: google

  14. I have attempted other people but there is none that suppress your urge
    for food greater than this. Phen375 is yet another weight reduction product that’s
    striking the current market. Phen375 (or Phentermine375) is a synthetic fat burner and urge for food suppressant.

    Feel free to surf to my page Phen375 Reviews

  15. click says:

    Excellent items from you, man. I’ve take note your stuff prior to and you’re simply too great.
    I really like what you have bought right here, really
    like what you are saying and the way through which
    you say it. You are making it enjoyable and you continue to take care of
    to stay it smart. I cant wait to read much more from you.
    That is actually a great site.

    My weblog … click

  16. Mandy says:

    You can burn the grass with spray, other substances such as inhalants saliva divinorum and evaporator.
    If you are interested in using a mineral foundation, but I have
    no idea how to apply it, here is a simple step-by-step
    guide to help you achieve light weight, flawless finish that can only mineral
    substrates. Babies feel a lot of relaxation and the soothing effect
    of the medicated vapors heal the congestion.

  17. What’s up to every , for the reason that I am really keen of reading
    this webpage’s post to be updated regularly.

    It contains pleasant data.

  18. Are you one of the many individuals who likes kitchen gadgets.

    But I do not use the sponge in its mouth because it
    looks too pretty, so the fish is now the guard of the sink.
    Kitchen design styles change quite fast and this can also be hastened by the use of the latest modern gadgets like blenders, juicers, modern ovens, steamers and the like.

    My homepage internet service for pc

  19. The product or service is very high priced still clearly cheaper that breast enhancement surgeries.
    Triactol is made of plants extracts are widely grown in the Thailand jungle known as Pueraria mirifica.

    This method is not recommended because it is highly inconvenient and painful.

    Feel free to visit my website: breast by size

  20. This is really fascinating, You’re a very skilled blogger.
    I’ve joined your feed and stay up for seeking extra of your fantastic post.
    Additionally, I have shared your website in my social networks

    my web blog; best automatic coffee machine

  21. Hello, I think your blog might be havingg browser compatibility issues.

    When I look at your blog site in Opera, it loos fine but when opening in Internet Explorer, it has some
    overlapping. I just wanted to give you a
    quick heads up!Other then that, terrific blog!

    Feel free to surf to my web page :: best single cup coffee maker in the world

  22. The other day, while I was at work, my cousin stole my
    apple ipad and tested to see if it can survive a
    twenty five foot drop, just so she can be a youtube sensation.
    My iPaad is now broken and shhe has 83 views. I know this is totally off topic but I had to
    share it with someone!

    Feel free to visit my website best coffee maker customer review

  23. I am sure thhis paragraph has touched all the internet visitors, its really really
    nice article on building up new web site.

    My blog poszt best home ice cream maker

  24. Anonymous says:

    Hi there colleagues, its enormous post on the topic of tutoringand completely defined, keep it up all
    the time.

    Have a look at my site; netent casino p

  25. A country is what the countrymen make it and countrymen of Bhutan are the most
    peace loving beings one can ever come across thus making every tourist feel welcome in their
    land. This is an overview of the major hospitals in India catering to medical tourists
    and what you can expect for medical care and medical facilities.
    The Phoenix area, in my opinion is the greatest winter
    golfing destination in the US.

  26. This will be ideal for any individual that travels and desires to hold their
    current mobile cell phone. If customers want versatility in their
    cellphone, then they have to have to have the Blackberry code generator.
    The Black – Berry Daring 9650 can be unlocked and employed with any GSM-centered mobile carrier.

    Look into my blog post unlock my phone

  27. Examine the frame tto see if there are any noticeable
    cracks, andd look for huge portions with rust. As we
    all know that many of the fresh erbs and spices used in Thai cooking – such as turmeric, galangal,
    coriander, lemongrass, and fresh chillies
    - have immune-boosting and disease-fighting power. This also means that you should wait your jeep
    to cool down before washing it after a ride.

    My website – kitchen knife reviews []

  28. Chris Jones says:

    Heey I knopw this is off topic but I was ondering if you knew
    of any widgets I could add to my blog that automatically tweet
    my newest twitter updates. I’ve been looking for a plug-in like this for
    quite some time and was hoping maybe you would have some experience with something
    like this. Please let me knoow if you run into anything.

    I truly enjoy reading your blpg and I look forward to your
    new updates.

    Feeel free to visit my blog; Chris Jones

  29. Violette says:

    Hi! I know this iss kinda ooff topic nevertheless I’d figured I’d ask.
    Would you be interested in exchanging links orr maybe guest authoring a
    bog post or vice-versa? My site covers a lott of thhe
    same subjects as yours and I beelieve wwe could greatly benefit from
    each other. If you might be interested feel free
    to shoot me aan e-mail. I look forward to hearing from you!
    Superb blog by thee way!

    my homepage :: Auto Mobile Coode By Giovani Leoni,

  30. This site was… how do I say it? Relevant!! Finally I have found something that helped me.

    Many thanks!

    In the event that remove oil stains from concrete remains mystifying for you personally,
    it is best to read more.

  31. Eloise says:

    It’s a pity you don’t have a donate button! I’d without a
    doubt donate to this excellent blog! I suppose for now i’ll settle
    for bookmarking and adding your RSS feed to my Google
    account. I look forward to brand new updates and will talk about this site with
    my Facebook group. Chat soon!

    Look at my web site … pompa air shimizu semi jet pump [Eloise]

  32. DOMINOQQ says:

    nice article ever i found it

  33. seo agency says:

    Founded in 2012 with unrivalled SEO experience of working across Europe,
    Middle East and Asia our management team have worked in some of
    the most competitive industries online with great success.

  34. DOMINOQQ says:

    thanks for share this :)

  35. Ava says:

    Hi, I ddo believe this is a great website. I stumbledupon it ;) I’m going to return yet again since i have book
    marked it. Money and freedom is the greatest easy way to make
    money onlikne free (Ava) to change, may
    you be rich and continue to guide others.

  36. print says:

    Good day I am so glad I found your web site, I really found
    you by accident, while I was searching on Digg for something else, Regardless I am here
    now and would just like to say kudos for a marvelous
    post and a all round exciting blog (I also love the theme/design), I don’t have time to browse it all at the moment but I have bookmarked it and also included
    your RSS feeds, so when I have time I will be back to read more, Please do keep
    up the fantastic job.

  37. Oh my goodness! Amazing article dude! Many thanks, However I
    am having issues with your RSS. I don’t know why
    I am unable to join it. Is there anybody having similar RSS problems?
    Anybody who knows the answer can you kindly respond?

  38. Anonymous says:

    Die Fairness bei den Spielen im All Jackpots Spielcasino ist dank Microgaming gew

  39. Edmund says:

    When henna becomes dry, just wash your hair with simple water and do not use shampoo.
    You will see a significant difference in your hair just from selecting the correct natural products and getting basic trims.
    Instead of being simply a means of concealing gray hair,
    as it was once regarded, hair color is now used for many purposes by women of all ages.

    My blog :: hair color styles (Edmund)

  40. Anonymous says:

    You possibly can down load this hack by simply press down load button listed under, that’s
    positively free.

  41. domaci film says:

    I like the helpful information you supply to your articles.

    I’ll bookmark your blog and take a look at once more here frequently.
    I’m relatively sure I’ll be informed lots
    of new stuff right right here! Best of luck for the following!

  42. Wilkinson has been devastated since reports surfaced in June 2014 that her
    husband, former NFL star Hank Baskett, had cheated on her
    with transsexual model Ava Sabrina London just one month
    after Kendra gave birth to their second child. An effective weight loss pill can help you to break bad habits, jump start your metabolism and help you achieve the
    weight loss you want. Many weight loss methods are available on the market but experts recommend that you
    avoid quick-fix solutions.

  43. At the same time, with the Shanghai World Expo, the South African World Cup
    is approaching, and the second half of 3D television pilot, both for the
    color TV market into a new life and power, integrated LED backlight, network
    multimedia and 3D stereoscopic display. 18 per share of common stock, payable June 7, 2012, to shareholders of record on May 1, 2012.
    If you want a faster processor, you don’t have to buy a new phone and you don’t need
    to be a computer whiz, you simply need to root your system.

    my blog fccn investment

  44. It’s in fact very difficult in this full of activity life to listen news on TV,
    thus I simply use web for that purpose, and obtain the latest news.

  45. drew8779 says:

    It’s nice to finally find great postings such as this. I actually liked it.

  46. Thank you for all that you have given to me,cara pemesanan gold g hopefully all of these are useful for all of us.
    Thanks for some other fantastic article. Where else could anyone get that type of information in such a perfect method of writing? I have a presentation next week, and I am on the search for such info.

  47. I think the article is quite important for the bloggers who want to learn SEO beginner like me , however , the above article my friend that I so know that usually I just bermokentar Nice Post Gan but now I know how to comment that is good and right .

  48. Daftar Poker says:

    Get interesting information that you can get here!

Leave a Reply