使用Javascript或Jquery重新加载带有锚点的页面

融化狗

我在URL中使用锚作为JavaScript的一种变量,例如:

mysite.com/itempage.html#item75

当我单击任何其他页面上的链接,而不是有问题的实际页面(itempage.html)时,此方法有效。

单击该链接仅需更改URL,而无需重新加载页面。由于该页面不会重新加载,因此我的JavaScript均无法再次运行。

有谁知道用新的网址重新加载页面的方法吗?

到目前为止,我已经尝试过:

的HTML

<div id="itemmenu">
  <a id="item75" href="#">Item 75</a>
  <a id="item11" href="#">Item 11</a>
</div>

JQUERY

$( "#itemmenu a" ).each(function(index) { 
    $(this).on("click", function(){
        var linkid = $(this).attr('id'); 
        var winloc = "mysite.com/itempage#" + linkid;
        window.location  = winloc;
    });
});
阿森尼·穆尔琴科

这确实是预期的行为:不重新加载页面,而只是将页面滚动到锚点。另外,“#...”部分完全在客户端发生,并且浏览器不会将URI的这一部分发送到服务器,因此:

被视为服务器的相同URI。

如果您需要重新加载页面,则可以执行以下操作:

<div id="itemmenu">
  <a id="item75" href="?item=75">Item 75</a>
  <a id="item11" href="?item=11">Item 11</a>
</div>

如果您不需要重新加载页面,而只需要重新运行JavaScript,则将所需的JavaScript函数与任何相关链接上的click事件相关联。


附加条款:

  1. $(this).on("click", ...)可以缩短为$(this).click(...)

  2. 您不需要实际的JavaScript代码:href直接在HTML代码中设置,而无需通过JavaScript进行更改。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

动态添加 return false 到所有带有 # 的锚点(使用 javascript 或 jquery)

使用ajax加载页面并滚动到加载的页面锚点

rails-链接到同一页面但具有锚点->不重新加载

推迟将JavaScript加载到特定页面锚点

查找页面中的所有锚点并附加功能而不使用jquery

使用JQuery从页面上的所有链接中获取锚点参数并替换目标链接的href

链接到不同页面上的锚点和scroolTo使用JQuery锚点

如何使用jQuery上下滚动页面至锚点?

页面重新加载后在URL中添加锚点并在JS中显示隐藏部分

页面加载后尝试使用jQuery触发锚点点击

在 Laravel 中使用 Ajax 在第二次单击另一个锚点时重新加载页面

JQuery-ui选项卡-重新加载带有全新内容的页面不起作用

带有重新加载的 jquery 单击事件

带有Javascript的WebView不断重新加载

如何使用JQuery重新加载页面?

加载整个页面后如何使用javascript重新加载页面

如何使用 angular 或 javascript 重新加载页面

使用JavaScript可以重新加载HTML页面

重新加载带有header()的页面后,使用echo()编写文本

页面重新加载,同时使用带有Rails的angularjs删除图像

包含具有特定锚点的页面

打开带有嵌套“细节”内锚点的页面时,如何扩展细节/摘要?

带有链接锚点的按钮,指向页面上的div部分-不刷新

加载结果后滚动到并突出显示带有“ .agree”类的锚点

使用 AJAX 将页面加载到特定锚点的 div 中

使用锚点更改页面的内容

在页面加载时隐藏带有锚名称的div,仅在单击链接时显示

ruby on rails 4 / jquery / javascript:按钮仅在页面重新加载后有效

jQuery-在加载并直接定位到具有锚点的URL时获取偏移量