如何滚动到IFrame页面中的某个锚点标记?
使用David J.Bradshaw https://github.com/davidjbradshaw/iframe-resizer设计的巧妙的Iframe-Resizier库,我在外部页面中包含了一个包含大量内容(=长页面)的IFrame。因此,如果我链接到页面,那么许多内容在第一个屏幕上是不可见的,在某些情况下,我想跳转到iframe中更下方的特定锚点标记。
<html>
<a href=“outer-page.html#somewhere_name” />
</html>似乎不起作用
我像这样使用"inPageLinks: true“:
<script type="text/javascript">
iFrameResize({
heightCalculationMethod: 'lowestElement',
inPageLinks: true
</script>我现在的问题是:我如何才能让外部页面向下滚动到某个锚标签,而不需要在iframe页面内部实现一些新的东西?本例中的锚标记位于IFrame页面内部。
当我包含像这样的IFrame页面时
<html>
<iframe id=“strytl” src=“iframe-page.html#somewhere_name”></iframe
</html>然后,(重新)调整IFrame的大小似乎不能完美地工作,并且iframe顶部的内容被切断。
但在moveToAnchor中,它可以在IFrame内部完美地工作,页面会神奇地向下滚动到锚标签。因此,在iframe页面中,我可以调用:
<script type="text/javascript>
parentIFrame.moveToAnchor('somewhere_name’);
</script>但是我怎么才能从父页面触发它呢?
<script type="text/javascript>
$('iframe#strytl').iFrameResize({moveToAnchor: 'somwhere_name'});
</script>导致此错误:
<script type=“text/javascript”>
[iFrameSizer][Host page: strytl] Ignored iFrame, already setup.and
</script>和
<script type="text/javascript">
iFrameResize({
heightCalculationMethod: 'lowestElement',
inPageLinks: true,
moveToAnchor: 'somewhere_name'});
</script>似乎一点效果都没有。
(在本例中,外部页面和iframe具有不同的服务器名称。)
<script type=“text/javascript”>
var myFrm = document.getElementById('strytl');
var myCw = myFrm.contentWindow;
myCw.parentIFrame.moveToAnchor(‘somewhere_name’);
</script>结果:
<script type=“text/javascript”>
Error: Permission denied to access property “parentIFrame"
</script>我能从外部页面跳转到iframe中的锚点吗?
发布于 2016-02-11 05:29:05
就像这样。
<script type="text/javascript">
iFrameResize({
heightCalculationMethod : 'lowestElement',
inPageLinks : true,
initCallback : function (iFrame){
iFrame.iFrameResizer.moveToAnchor('someAnchor');
}
});
</script>https://stackoverflow.com/questions/35017367
复制相似问题