0

さまざまなセクションを作成する必要がある Web ページを作成しています。特定の瞬間に表示されているセクションに合わせてページの高さを調整したいと考えています。これを達成するための最良の方法はどれですか? 私はiframeとターゲットを開くことでそれをやろうとしていました

    <a href="/example" target="myframe">

しかし、表示されているコンテンツに合わせてiframeを調整することはできません。

どんな助けでも大歓迎です!前もって感謝します

私が欲しいのは、誰かが「詳細情報」をクリックするたびに、ページの下部から展開するウィンドウです。私はiframeでそれを達成できると思った

4

2 に答える 2

1

これはすべてのブラウザで機能します

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>auto iframe height adjust</title>
<style>
</style>
<script type="text/javascript">
<!--//
function sizeFrame() {
var F = document.getElementById("myFrame");
if(F.contentDocument) {
 F.height = F.contentDocument.documentElement.scrollHeight+30; //FF 3.0.11, Opera 9.63, and    Chrome
} else {
F.height = F.contentWindow.document.body.scrollHeight+30; //IE6, IE7 and Chrome
}
}
window.onload=sizeFrame;
//-->
</script>
</head>
<body>

このWebサイトを表示するには、iframe対応のブラウザが必要です。

于 2012-11-30T18:15:01.143 に答える
0

私はこの解決策を見つけ、私の問題を完全に解決しました! 幅をリサイズするオプションもあります。

<script type='text/javascript'>

function setIframeHeight( iframeId ) /** IMPORTANT: All framed documents *must* have a DOCTYPE applied **/
{
var ifDoc, ifRef = document.getElementById( iframeId );

 try
 {   
 ifDoc = ifRef.contentWindow.document.documentElement;  
 }
 catch( e )
 { 
  try
  { 
   ifDoc = ifRef.contentDocument.documentElement;  
  }
  catch(ee)
  {   
  }  
 }

 if( ifDoc )
 {
  ifRef.height = 1;  
  ifRef.height = ifDoc.scrollHeight;

  /* For width resize, enable below.  */

  // ifRef.width = 1;
  // ifRef.width = ifDoc.scrollWidth; 
 }
}

</script>

<iframe id = "myIframe"  onload = "setIframeHeight( this.id )">

ここで見つけました:http://www.sitepoint.com/forums/showthread.php?747398-IFRAME-Auto-Height

于 2012-11-30T19:14:38.267 に答える