如何使用JQuery / JavaScript / CSS实现显示请求的命名锚点
该页面有一个容器div,它包含多个内容div。 每个内容div都有一个命名锚。 一次只显示一个内容div:
例:
.lurk { display: none; } // ... something that adds and removes the lurk class from the content divs
期望的行为是,如果有人使用URL中的有效命名锚点请求页面,则JavaScript / JQuery将看到它并适当地设置各种显示属性,以便可以看到与命名锚点对应的内容。
- 请求URL是否可用于JQuery?
- 是否通常在$(document).ready?()中检查URL中的命名锚点
- 这是难以跨浏览器的方式吗?
- 是否有用于从URL中提取锚点的库例程,或者每个人都使用自己的正则表达式?
您可以使用location.hash
从URL中检索锚点。 这将适用于浏览器,并将在$(document).ready
。
例如:
$("div.container > div").removeClass("lurk"); if (location.hash) $("#" + location.hash).addClass("lurk");