【问题标题】:Is it possible to link to a div without changing the URL (in HTML)?是否可以在不更改 URL(在 HTML 中)的情况下链接到 div?
【发布时间】:2014-09-16 22:19:05
【问题描述】:

因此,基本上,我希望人们能够通过指向 Div 的链接浏览我的网站,但要防止浏览器更改当前 URL(它在 .html 文件的末尾添加了#divname)。

我有这样的事情:

<div id="modalLogin" class="modalLogin">
    <!-- random stuff here -->
</div>

在其他地方我有一个指向该 Div 的链接:

<a href="#modalLogin"> 
    <img class="btnLogin" src="../images/btnLogin.png" alt="Log in!"/> 
</a>

但是,正如我之前提到的,每当他们点击这类链接时,URL 都会发生变化。我希望能够在不发生这种情况的情况下浏览网站。如果可能的话,只使用 HTML(没有 JavaScript、没有 jQuery、没有 AJAX)。

虽然我们正在这样做,但我看到整个网站根本没有更改其 URL(即使我已经跟踪了请求并且清楚地浏览了不同的文件),有些甚至没有向您显示 '预期地址'(浏览器左下角的 URL)。我该怎么做?

提前致谢!

P.S.:我搜索过这个网站,显然所有“类似”的问题都提出了相反的问题:如何更改 URL。

【问题讨论】:

  • 为什么即使 URL 发生变化也很重要?
  • 我认为仅使用 HTML 是不可能的,a 标签代表锚点,这正是浏览器在附加 #anchorPointName 时所寻找的。​​span>
  • 糟糕的想法。您正在删除您的用户和浏览器可能不需要的信息,除了您的某些设计偏好?您还将破坏您的 SEO,并且如果没有 JS,您的网站将根本无法运行。您要求的技术称为“伪装”,除非您正在编写恶意软件,否则它通常被认为是不好的做法。
  • 你要求的太多了。要么使用JS,要么接受这样的URL。
  • 该死!我想我可能要求的太多了。我想要这个的原因是因为我经常使用模态。我不希望用户直接进入模态(有意或错误地)。编辑:那么,非 HTML 的处理方式(JS 或其他)如何?

标签: html url href


【解决方案1】:

我认为您可以为此使用 Javascript。

//Grab your current Url
var url = window.location.toString();
//Remove anchor from url using the split
url = url.split("#")[0];

示例JSFIDDLE

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2021-08-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-06-13
  • 2015-01-24
  • 1970-01-01
相关资源
最近更新 更多