跳跃的iframe锚(Jumping to anchor in iframe)

2019-07-05 10:20发布

情况:

第一:iframe与ID miframe,显示一个名为素贞锚,即网站

<div id="suchen"></div>. 

第二。 父框架。

目标:让父框架内的链接看起来像

<a class="LINK0" title="" href="javascript:springen('suchen');">w/e</a> 

使在iframe的内容被滚动到锚俗尘 。 我的做法。

function springen(anker) { 
    var childWindow =  document.getElementById("miframe").contentWindow;

    // this should emulate a click on the ptAnchor DIV's child A HREF.
    //childWindow.document.getElementById(anker).firstChild.click();
    //childWindow.document.getElementById(anker).scrollIntoView();
    // alternatively, this will simply scroll the child window to the top-left corner
    //childWindow.scrollTo(0,200);
}

childWindow.scrollTo(0,200); 工程到目前为止,滚动发生在200,但我需要滚动到非常主播,无论它是在iframe。 想法?

Answer 1:

通常你会使用一个链接像<a href="#your_anchor_name_or_id">Go to the anchor</a> 。 如果你想这样做,使用JavaScript,你可以改变的价值window.location.hash 。 下面的代码应该做的是一个框架之内:

document.getElementById("the_id_of_your_iframe").contentWindow.location.hash = "your_anchor_name_or_id";

如果你不想改变的哈希值,有上MDN一个例子 。 您可以修改它的iframe中。



Answer 2:

下面的代码应该滚动iframe来锚点的位置:

function springen(anker) { 
    var childWindow =  document.getElementById("miframe").contentWindow;
    childWindow.scrollTo(0,childWindow.document.getElementById('suchen').offsetTop);
}

编辑:

的jsfiddle: http://jsfiddle.net/pkvhw/6/



文章来源: Jumping to anchor in iframe