为什么需要两次调用setPageFromHash()方法?

我想知道为什么我需要双重调用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();
zkx993299184 回答:为什么需要两次调用setPageFromHash()方法?

您无需在addEventListener参数内调用函数。您可以仅传递要在事件中调用的函数的名称:

window.addEventListener('hashchange',setPageFromHash);
本文链接:https://www.f2er.com/3145441.html

大家都在问