Comparing performance of adding .click() to 50 link tags with class selector in table cells vs using .on() to listen for click events bubbling up the DOM tree.
JavaScript performance comparison
Preparation code
<table>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<a class="thelink"></a>
</td>
</tr>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js">
</script>
</table>
Preparation code output
Test runner
Warning! For accurate results, please disable Firebug before running the tests. (Why?)
Java applet disabled.
| Test | Ops/sec | |
|---|---|---|
no delegation |
|
pending… |
with delegation |
|
pending… |
You can edit these tests or add even more tests to this page by appending /edit to the URL.
0 comments