Skip to content

Instantly share code, notes, and snippets.

@sirtimbly
Created April 1, 2015 14:31
Show Gist options
  • Save sirtimbly/988d4c1e26e8c5666ac2 to your computer and use it in GitHub Desktop.
Save sirtimbly/988d4c1e26e8c5666ac2 to your computer and use it in GitHub Desktop.
pattern-lab performance script
<script type="text/javascript">
$('iframe#sg-viewport').load(function() {
var now = new Date().getTime();
var perfTimes = this.contentWindow.performance.timing;
var page_load_time = now - perfTimes.navigationStart;
var response_start_time = perfTimes.responseStart - perfTimes.navigationStart;
var response_end_time = perfTimes.responseEnd - perfTimes.navigationStart;
var response_dom_int = perfTimes.domInteractive - perfTimes.navigationStart;
console.log("User-perceived page loading time: " + page_load_time);
$('#sg-perf-toggle').html(page_load_time + 'ms');
$('#sg-dom-loaded').html(page_load_time + 'ms');
$('#sg-response-start').html(response_start_time + 'ms');
$('#sg-response-end').html(response_end_time + 'ms');
$('#sg-dom-interactive').html(response_dom_int + 'ms');
$('#sg-perf-toggle').css('color','#000');
var domLoadBudget = 1000;
if (page_load_time > domLoadBudget) {
$('#sg-perf-toggle').css('background', '#9C1F31');
} else if (page_load_time > (domLoadBudget * 0.75)) {
$('#sg-perf-toggle').css('background', '#C36A40');
} else {
$('#sg-perf-toggle').css('background', '#5A913A');
}
});
</script>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment