标题仅在页面刷新后显示

title is shown only after page refresh

我的网站有以下 url。我想在用户访问这个 link http://localhost:8080/krishi/#modal2 时更改网页标题(实际上它是弹出窗口 window)。所以我使用了以下代码。

if(window.location.hash === "#modal2"){
    document.title = "Modal2";
    }

我尝试使用内部代码

1. $(document).ready(function(){})
2. window.onload=function(){}

标题在第一次点击时更改,如果我刷新 url。我认为这是因为缓存,所以我还添加了以下代码来刷新 url 所以它刷新当前页面一次并显示标题。

if(window.location.hash === "#modal2"){
    window.location.reload();
    document.title = "Modal2";
}

但它不起作用。它是循环的。请提出解决此问题的任何想法。提前致谢。

您应该尝试使用 hashchange 事件。这是在 JSFiddle:

触发此事件的演示
$(window).on('hashchange', function() {
  alert('window.location.hash = ' + window.location.hash);

  if(window.location.hash === "#modal2"){
    document.title = "Modal2";
  }
});

您可以使用点击事件来解决您的查询。这将是一种简单且更好的方法。尝试通过单击事件更改代码,这将是一种更好、更简单的方法。谢谢。