getBoundingClientRect vs jQuery

JavaScript performance comparison

Revision 3 of this test case created by David Warkentin

Preparation code

<script src="//ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js">
</script>
<div id="foo" style="width:500px; height:500px; padding:10px; border:10px solid #000000;">
</div>
<script>
  Benchmark.prototype.setup = function() {
    var foo = document.getElementById('foo');
    var $foo = $(foo);
  };
</script>

Preparation code output

Test runner

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

Java applet disabled.

Testing in unknown unknown
Test Ops/sec
getBoundingClientRect
foo.getBoundingClientRect()
pending…
jQuery
$.extend({}, $foo.offset(), {
  width: foo.offsetWidth,
  height: foo.offsetHeight
})
pending…
jQuery (offset only)
$foo.offset()
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