Javascript 关闭时,如何通过#链接删除url中的#弹出窗口?
我打开了几个弹出窗口,例如Javascript 关闭时,如何通过#链接删除url中的#弹出窗口?,javascript,html,Javascript,Html,我打开了几个弹出窗口,例如http://example.tk/#example,要关闭它们,我使用: <a href="#">Close</a> 我试过javascript:,javascript:也是 但这对我来说不起作用,我启用了JavaScript。您已经绑定了一个JavaScript函数,以便在单击链接时运行。您希望实现该功能,而不是遵循链接。因此,请防止链接的默认行为 document.querySelector("a").addEventListener("
http://example.tk/#example
,要关闭它们,我使用:
<a href="#">Close</a>
我试过javascript:
,javascript:代码>也是
但这对我来说不起作用,我启用了JavaScript。您已经绑定了一个JavaScript函数,以便在单击链接时运行。您希望实现该功能,而不是遵循链接。因此,请防止链接的默认行为
document.querySelector("a").addEventListener("click", function (event) {
event.preventDefault();
open_popup();
});
…那么#从一开始就不会添加到URL中
完成后,您可以记住这一点并更改URL,这样它就不会指向页面顶部(#
),而是指向一个有用的单独页面,该页面与弹出窗口具有相同的用途。有关此主题的详细信息,请参阅。您已经绑定了一个JavaScript函数,以便在单击链接时运行。您希望实现该功能,而不是遵循链接。因此,请防止链接的默认行为
document.querySelector("a").addEventListener("click", function (event) {
event.preventDefault();
open_popup();
});
…那么#从一开始就不会添加到URL中
完成后,您可以记住这一点并更改URL,这样它就不会指向页面顶部(#
),而是指向一个有用的单独页面,该页面与弹出窗口具有相同的用途。有关此主题的进一步阅读,请参阅。只需将href
保留为空,href=“”
,即可工作。只需将href
保留为空,href=“”
,即可工作。为什么有href属性?如果您添加了onclick事件来关闭popup@Krii-它使元素可聚焦,因此您无需鼠标即可“单击”它。这对于可访问性非常重要。(尽管这不是解决问题的最佳方案)。这个问题似乎正是你所需要的。本质上,添加一个onclick处理程序,通过修改document.location.href
删除#符号。为什么要有href属性?如果您添加了onclick事件来关闭popup@Krii-它使元素可聚焦,因此您无需鼠标即可“单击”它。这对于可访问性非常重要。(尽管这不是解决问题的最佳方案)。这个问题似乎正是你所需要的。本质上,添加一个onclick处理程序,通过修改document.location.href
删除#符号。