当iframe中的内容使用#pageName转换时,父网页会跳转/自动滚动到iframe位置

时间:2014-03-11 04:32:34

标签: javascript jquery-mobile iframe

在iframe中进行转换时,父网页会跳转/自动滚动到iframe的位置。使用jquery mobile进行转换 - $ .mobile.changePage($(#pageName))[使用锚点转换为div]。

我已经浏览了stackoverflow上的各种链接,例如Loading iframe with an #element specified moves the parent viewpoint to the same location(隐藏iframe直到加载和页面更改,但它没有解决问题)

很少有其他链接提到a)关于window.parent scrollToTop iframe加载但我不希望父页面在iframe中的页面发生变化时完全滚动。 b)当iframe加载时将焦点更改为父页面,但它也没有帮助。 (注意页面转换到iframe中的另一个div,所以我们似乎需要根据jquery mobile使用锚标记)。他们是一种阻止这个父页面自动滚动的方法吗?任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:0)

问题是jQuery mobile的focusPage,它是在iframe中自动聚焦内容。要更改此行为,我在iframe

中显示的网页中添加了以下提到的javascript
<script type="text/javascript">
        if (self != top) { //if inside iframe
        //don't use focusPage for embedded site to prevent autoscroll
            $.mobile.focusPage = function ( page ) {
            return;
                }
        }
</script>

注意:此链接有助于解决此问题:When within iframe JQuery Mobile autoscrolls to the iframe top