iframe中,頁面轉換后回到頁面的頂部


看到網上有這樣描述的:

  現在A頁面內分為上下兩個部分,上部分是top,下部分分左右,左是treeview右邊是iframe,iframe內嵌一個B頁面,B頁面的內容實質上是個月刊,可以理解為雜志,里面有很多轉向到其他頁面的連接,問題來了。
如果現在我瀏覽A頁面很長,瀏覽器滾動條在中間,當我點擊B頁面的某個連接時,iframe內的頁面變了,但是A頁面整體無變化,這時滾動條還是在中間的部位,造成的為題就是我看到的iframe里面的內容不是文章的頭部,而有可能是直接看到中間部位甚至是尾部(因為我的iframe自適應高度,當文章高度低於iframe高度時他是會收縮的自然的瀏覽器也就在文章最底部了)。

  ①首先頁面的首頁是這樣的:

 

  ②然后點擊左下部分的“more”按鈕,應該展示這樣的頁面效果,如下:

  ③但是實際上,展示的頁面效果是這樣的,如下:

  (1)有一個主頁面A,A中嵌入一個iframe框架B,如下:

<body>
<div class="main_body">
        <!--logo-->
        <img class="logo" src="static/images/logo2.png" alt="江蘇分中心">
        <!--menu-->
        <div class="main-menu">
            <a href="#" name="link" class="current" onclick="opIframePage(this,'home');">0</a>
            <a href="#" name="link" id="news" onclick="opIframePage(this,'news');">1</a>
            <a href="#" name="link" onclick="opIframePage(this,'train');">2</a>
            <a href="#" name="link" onclick="opIframePage(this,'auth');">3</a>
            <a href="#" style="background: orange; color:#fff;" onclick="regist();">4</a>
        </div>
        <div>
            <iframe id="iframePage" style="width: 100%;height: 1000px;overflow-y:scroll;" frameborder="0">
            
            </iframe>
        </div>
        <footer>
            <p>fgd</p>
        </footer>
    </div>
</body>

  打開iframe中的頁面:document.getElementById("iframePage").src =url;
  (2)如果我打開的B頁面后,主體頁面位於中部或者底部,這就不符合用戶的習慣了

   如何改變?

  方法一:在父頁面做手腳:

function topTo(){
  document.getElementById(‘iframePage’).scrollIntoView();
}

    其中iframePage是你要定位在頁面頂部的元素id,然后在子頁面中調用父級頁面的方法,parent.topTo();

  方法二:直接在子頁面中寫方法:parent.scrollTo(0,0);

    這樣就可以顯示②步的效果了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM