Skip to content

Instantly share code, notes, and snippets.

@pranavkm
Last active November 19, 2015 16:05
Show Gist options
  • Save pranavkm/f78e50e7c61ef7d3f8d2 to your computer and use it in GitHub Desktop.
Save pranavkm/f78e50e7c61ef7d3f8d2 to your computer and use it in GitHub Desktop.
(function () {
"use strict";
var itemsToHide = document.querySelectorAll(".collapsible, .page:not(#stackpage)"),
i;
for (i = 0; i < itemsToHide.length; i++) {
itemsToHide[i].style.display = 'none';
}
function attachHandlers(selector, handler) {
var items = document.querySelectorAll(selector);
for (i = 0; i < items.length; i++) {
items[i].addEventListener("click", handler, false);
items[i].addEventListener("keypress", function(evt) {
if (evt.keyCode == 13) {
handler(evt);
}
}, false);
}
}
attachHandlers(".frame", function(evt) {
var elements = evt.target.querySelectorAll(".source .collapsible");
for (i = 0; i < elements.length; i++) {
elements[i].style.display = elements[i].style.display === "none" ? "" : "none";
}
});
attachHandlers("#header li", function(evt) {
var old = document.querySelector("#header .selected");
old.classList.removeClass("selected");
evt.target.classList.addClass("selected");
document.getElementById("#" + old.id + "page").style.display = 'none';
document.getElementById("#" + evt.target.id + "page").style.display = '';
});
attachHandlers("#rawExceptionButton", function(evt) {
var div = document.getElementById('rawException');
div.style.display = 'inline-block';
div.scrollIntoView(true);
evt.preventDefault();
evt.stopPropagation();
});
})();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment