对Anchor
点有疑问。
我有一个像域 .tld / sub /#point1 /#point2这样的网址,我还使用了由第一个#point1
触发的标签。因此,如果有人打开链接,浏览器会检测到该页面上的第一个标签,然后需要找到第二个#point2
,这是<div id="point2"></div>
之类的锚点。
但是现在问题是,因为在加载页面时不可能使用多个锚点向下滚动,我必须找到另一个选项。但是,当地没有那么多的经历。谁能帮助我?
关心Martijn
答案 0 :(得分:1)
$(document).ready(function() {
goToUrl();
});
function goToUrl() {
var newUrl = document.URL;
var newUrlArr = newUrl.split("#");
var newUrlArrLength = newUrlArr.length;
if (newUrlArrLength>0) {
var last = parseInt(newUrlArrLength) -1;
var lastUrl = newUrlArr[last];
var lastItem = $("#"+lastUrl);
$('html, body').animate({
scrollTop: lastItem.offset().top
}, 1000);
}
}
答案 1 :(得分:0)
好的,我改变了Stavros的答案,有点像下面的那样:
jQuery(document).ready(function($) {
goToUrl();
function goToUrl() {
var newUrl = document.URL;
var newUrlArr = newUrl.split("?target=");
var defUrl = newUrlArr[1].slice(0, newUrlArr[1].indexOf("#"));
var newUrlArrLength = defUrl.length;
if (newUrlArrLength>0) {
var tag = $("#"+defUrl+"");
$(window).scrollTop(tag.offset().top);
}
}
});
这对我有用!谢谢Stavros。