1<!DOCTYPE html> 2<html> 3<head> 4<script type="text/javascript" src="../resources/runner.js"></script> 5</head> 6<body> 7<script> 8function appendBranchWithDepth(depth) 9{ 10 var node = document.body; 11 while (depth) { 12 var child = document.createElement('div'); 13 node.appendChild(child); 14 node = child; 15 depth--; 16 } 17 return node; 18} 19 20function appendChildren(root, childCount) 21{ 22 while (childCount) { 23 root.appendChild(document.createElement('div')); 24 childCount--; 25 } 26} 27 28// This makes a tree of depth 50 with 500 leaves. 29var tipOfBranch = appendBranchWithDepth(50); 30appendChildren(tipOfBranch, 500); 31var customEvent = new Event('foo'); 32 33function run() 34{ 35 for (var node = tipOfBranch.firstChild; node; node = node.nextSibling) 36 node.dispatchEvent(customEvent); 37} 38 39PerfTestRunner.measureRunsPerSecond({ 40 description: "Measure events dispatching", 41 run: run 42}); 43</script> 44</body> 45</html> 46