id selector context

JavaScript performance comparison

Revision 284 of this test case created

Info

*** This version adds a suggestion from a comment in Revision 2 of this test

Comparing the performance difference of varied jQuery 1.7 selectors.

This test page contains some dummy HTML (from html-ipsum.com) just to give the page some weight, make the selectors work a little bit.

Note that the "Tag" selector is selecting a tag that happens to be unique in the page just to be fair.

Preparation code

<script src="//ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<style type="text/css">
  .hide { display: none; }
</style>
<div class='container' id="containerid">
    <div class='main'>
        <ul class='list-1'>
            <li class='odd'>item</li>
            <li>item</li>
            <li class='odd'>item</li>
            <li>item</li>
            <li class='even'>item</li>
            <li>item</li>
            <li class='odd'>item</li>
            <li>item</li>
            <p class='hide'>paragraph</p>
        </ul>
        <ul class='list-2'>
            <li class='odd'>item</li>
            <li>item</li>
            <li class='odd'>item</li>
            <li>item</li>
            <li class='even'>item</li>
            <li>item</li>
            <li class='odd'>item</li>
            <li>item</li>
            <p>paragraph</p>
        </ul>
    </div>
</div>

Preparation code output

  • item
  • item
  • item
  • item
  • item
  • item
  • item
  • item
  • paragraph

  • item
  • item
  • item
  • item
  • item
  • item
  • item
  • item
  • paragraph

Test runner

Warning! For accurate results, please disable Firebug before running the tests. (Why?)

Java applet disabled.

Testing in unknown unknown
Test Ops/sec
jQuery ID
$("#containerid .even");
pending…
jQuery with find
$("#containerid").find('.even');
pending…
jQuery Selector class
$(".container .list-1 .even")
pending…
jQuery Selector class with find()
$('.container').find('.list-1').find('.even');
pending…
jQuery tagname
$("div p");
pending…
jQuery tagname with find()
$("div").find("p");
pending…
jQuery without Chaining
$("#containerid").find('.even').css("color","#f0f");
$("#containerid").find('.even').height(30);
pending…
jQuery with chaining
$("#containerid").find('.even').css("color","#f0f").height(30);
pending…
jQuery attribute selector
$('[id = "para"]');
pending…
jQuery attrubute selector using ID
$("#containerid").find('[id = "para"]');
pending…
jQuery Psuedo selector
$(":hidden");
pending…

Compare results of other browsers

Revisions

You can edit these tests or add even more tests to this page by appending /edit to the URL. Here’s a list of current revisions for this page:

0 comments

Add a comment