0

Web サイトのページに 2 つの div が横に並んでいます (左右に 1 つ)。JavaScript を使用して、右側のコンテンツで左側の高さを変更したい

右の div の動的な高さを取得しようとしました:

function getHeight() {
    var doc = document.getElementById('div.right');

    if (document.all) // ok I.E
    {
        H = doc.currentStyle.height;
    }
    else // ok FF
    {
        H = document.defaultView.getComputedStyle(doc, null).height;
    }
}​

しかし、スタイル CSS のページに javascript 変数を渡す方法がわからないため、ここで停止しました。つまり、同じページの他の div (左 div) にこの値を自動的に適用する方法がわからないということです。

何か案が?

4

2 に答える 2

2

使うだけ

document.getElementById('div.left').style.height = H;

編集

  1. 私の知る限り、javascriptから外部スタイルシートを変更することはできません
  2. div の高さは、ドキュメントが提供されたとき、読み込まれたとき、またはドキュメントが読み込まれた後の任意の時点で決定されますか?

上記で提案したコードは、次のように使用することでした(IEコードが正しいと仮定しています)

function getHeight() {
    var doc = document.getElementById('div.right');
    if (document.all) // ok I.E
    {
        H = doc.currentStyle.height;
    }
    else // ok FF
    {
        H = document.defaultView.getComputedStyle(doc, null).height;
    }
    document.getElementById('div.left').style.height = H;//✔
}
于 2012-06-24T01:14:17.757 に答える
0

人々を助けるために、Jqueryを少し使って2つのdivの高さを自動的に変更する素晴らしいコードを見つけました:

<script type='text/javascript'>
    $(window).load(function(){
    var lh = $('#div.right').height();
     var rh = $('#div.left').height();
     if (lh >= rh){
    //alert('left : ' + lh);
    $('#div.left').height(lh);
    } else {
    //alert('right : ' + rh);
    $('#div.right').height(rh);
    };
    });
    </script>

すべてのナビゲーターに有効です。

于 2012-06-28T13:12:54.493 に答える