父级和iframe位于同一个域中。 iframe具有动态高度并且没有自己的滚动条 - 滚动条位于父窗口上。
尽管进行了大量搜索,我还是找不到在加载时将父窗口滚动到iframe中的锚点的方法。即iframe网址是abc.com/iframe.html#link,但加载时只有iframe的顶部可见 - 父框架不会滚动到#link。有没有人知道这可以用javascript(在父或iframe或两者中)或其他方式完成?
由于
答案 0 :(得分:2)
这可以通过javascript来完成。假设你单击一个链接,而不是锚链接它,试试这个:
document.getElementById('id_of_link').scrollIntoView(true);
编辑:window.parent.scroll(x,y)怎么样,其中x,y是通过此方法检索的元素的位置:
function getOffset( el ) {
var _x = 0;
var _y = 0;
while( el && !isNaN( el.offsetLeft ) && !isNaN( el.offsetTop ) ) {
_x += el.offsetLeft - el.scrollLeft;
_y += el.offsetTop - el.scrollTop;
el = el.offsetParent;
}
return { top: _y, left: _x };
}
var x = getOffset( document.getElementById('yourElId') ).left;
答案 1 :(得分:0)
您是否尝试过urlencoding#?
尝试:%23