bru*_*nam 13 javascript hashtag
我想做到目前为止我所发现的相反.我用js设置了很多高度,我想在页面加载后导航到url中的hashtag.我猜这很简单,但我没有看到明显的答案......例如,请点击这里......
http://alavita.rizenclients.com/#story
使用代码尝试了这个...
$(window).load(function() {
var hashTag = window.location.hash;
window.location = '/' + hashTag;
});
Run Code Online (Sandbox Code Playgroud)
实际上并没有把我带到标记部分的顶部......
Onu*_*rım 27
如果您只是想在页面加载后更改哈希:
window.onload = function (event) {
window.location.hash = "#my-new-hash";
};
Run Code Online (Sandbox Code Playgroud)
如果要使用新哈希导航到URL:
window.location.href = "http://website.com/#my-new-hash";
Run Code Online (Sandbox Code Playgroud)
如果要监听URL哈希值的更改; 你可以考虑使用window.onhashchange DOM事件.
window.onhashchange = function () {
if (location.hash === "#expected-hash") {
doSomething();
}
};
Run Code Online (Sandbox Code Playgroud)
但它并不是每个主流浏览器都支持它.它现在拥有广泛的浏览器支持.您还可以通过轮询window.location.hash小间隔来检查更改,但这也不是非常有效.
对于跨浏览器解决方案 ; 我建议Ben Alman的jQuery hashchange插件将这些方法与其他一些方法结合使用后备机制.
编辑:更新问题后,我知道您希望页面滚动到书签?:
你可以使用Element.scrollTop或jQuery的$.scrollTop()方法.
$(document).ready(function (event) {
var yOffset = $("#my-element").offset().top;
$("body").scrollTop(yOffset);
});
Run Code Online (Sandbox Code Playgroud)
见文档这里.
| 归档时间: |
|
| 查看次数: |
23829 次 |
| 最近记录: |