Я хотел бы знать, почему мне нужен двойной вызов метода setPageFromHash()
? Я попытался увидеть также на отладчике, и вызов внутри addeventlistener
переводит меня на последнюю строку - вызов на setPageFromHash
. Разве недостаточно вызвать метод? Я думал, что вызов внутри addEventListener
приведет отладчик к вызову функции в строке 12.
var main = document.querySelector('main');
function showPage(name) { var html = document.getElementById(`t-${name}`).innerHTML; main.innerHTML = html; }
window.addEventListener('hashchange', function() { setPageFromHash(); });
function setPageFromHash() {
var hash = window.location.hash.substr(1);
if (hash === 'about') {
showPage('about'); }
else {
showPage('home');
}
}
setPageFromHash();