为什么与#的链接在firefox和safari中不起作用?

时间:2017-09-12 18:57:51

标签: javascript jquery html css firefox

我目前正在将网站编写为学校项目。我有想法将整个内容加载到一个文件中,但如果您单击导航中的链接,则只会显示允许的内容。我用javascript做了这个,它对网址做出反应,所以当我点击导航上的链接时,网址必须改变。所以我只是在这样的href后面做了一个#:

 <nav id="nav">
      <a id="ict" href="index.html#ict" onclick="refresher();" >Informatik</a>
      <a id="mmt" href="index.html#mmt" onclick="refresher();" >Multimediatechnik</a>
      <a id="gundd" href="index.html#gundd" onclick="refresher();" >Gestaltung und Design</a>
      <a id="daw" href="index.html#daw" onclick="refresher();" >Digital Artwork Gallery</a>
      <a id="about" href="index.html#about" onclick="refresher();" >&Uuml;ber mich</a>
  </nav> 

这适用于Google Chrome和Micrisoft Edge,但如果你使用firefox或safari,则网址中的#不会改变。

我不认为JS是这里的问题,但我不是100%肯定,所以这里是onclick_function:

function refresher(){
    location.reload()
}

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

他们确实有效。但是,在他们正确滚动页面后,refresher会运行并将页面滚动到-300。确定您想要的行为(hrefrefresher功能)并使用其中一种行为,但不能同时使用这两种行为。