1. 程式人生 > >iframe高度自適應

iframe高度自適應

borde 16px div 後者 size 我們 第一次用 一次 edit

  第一次用iframe標簽代替ajax異步刷新去做後天管理系統,發現iframe的確是個好東西。但有個最大的問題就是——高度不能自適應,要麽設置死,要麽用js去動態獲取目標資源body的height並改變iframe的height。我們往往使用後者去自適應高度,這樣的動態改變也有很多種方法——js和jQuery的。對於有選擇強迫癥的人來說,選一種通用的就行。

  HTML部分:

1 <div class="edit-content-iframe">
2      <iframe src="login_M.html" id="iframe" name="iframe" frameborder
="0" scrolling="no" width="100%" ></iframe> 3 </div>

  jQuery部分:

 1 <script>
 2       //同域ifram高度自適應
 3       $("#iframe").on(‘load‘,function(){
 4            //獲取iframe內容高度h 和 包裹元素距定位父元素的的距離h_
 5            var h = $(this).contents().find(‘body‘).height(),
 6                h_ = $(window).height() - $(‘.edit-content-iframe:eq(0)‘).offset().top;
7 8 //iframe高度至少填滿屏幕剩余部分 9 if(h < h_){ 10 h = h_; 11 } 12 $(this).height(h); 13 });14 </script>

  這樣就ok了!

  補充一句,這裏的高度自適應只能用於同域,非同域情況將會失敗!

iframe高度自適應