adminLte解決iframe高度問題

adminLte默認是全局刷新,也就是不存在frame頁面,經過修改,可以很容易實現右邊內容框用frame實現頁面刷新,這樣就不需要整個頁面全局刷新,點擊相應菜單時,只會刷新frame窗口,但是有一個問題就是frame默認高度只有一丁點,百度之後用了自適應也會有各種問題,比如高度只能拉伸不會縮短,在解決的道路上真的是沒有一個完美的解決方案,經過自己研究,發現一個非常簡單的方法,那就是用js獲取window的innerHeight,代碼實現window.innerHeight,然後出去頂部的狀態欄,以及空白部分,經過測試,窗口高度減去90是最合適的,也可以根據你自己的情況加減,最後調至一個最完美高度,發現任何分辨率都不會有問題!

代碼如下:

<div class="content-wrapper">
    <!-- Content Header (Page header) -->
    <!-- Main content -->
    <section class="content container-fluid">
        <iframe id="menuFrame" name="menuFrame" src="{:url('admin/index/welcome')}" style="overflow:visible;"
                scrolling="auto"
                frameborder="no" height="100%" width="100%">
        </iframe>
        <!--------------------------
          | Your Page Content Here |
          -------------------------->

    </section>
    <!-- /.content -->
</div>

 

<script>
    $("#menuFrame").height(window.innerHeight-90);
</script>

 

更新問題:第一次加載頁面時高度固定了,無法動態改變。

解決方案:js監聽每次frame的地址變化後重新計算改變高度

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章