1

名前付きのleftcss プロパティがと等しいかどうかを確認しようとしています。これが true の場合は、別の名前付きのプロパティを に変更します。div#right0%displaydiv#menu'none'

次の関数を使用して CSS スタイルを取得することを知っています。

document.getElementById("right").style.left = '0%'

0%しかし、この関数を常に実行して、左のスタイルが に等しいとすぐに、メニュー div を非表示にする方法がわかりません。

私はこれを行うために多くの方法を試しましたが、うまくいかないようです。おそらく、これを達成するためのより良い方法があります。

どんな助けでも大歓迎です。ありがとう!

4

2 に答える 2

0

ステップ 1 : 関数を作成する

function setMenuDisplay() {
  var right = document.getElementById("right");
  var menu = document.getElementById("menu");
  menu.style.display = right.offsetLeft ? "block" : "none";
}

ステップ 2#right :プロパティを変更できる任意のイベントでこの関数を呼び出しますleft(window.onload、window.onresize、またはページのコンテンツに影響を与える任意の関数)。

于 2013-04-14T11:30:57.100 に答える
0

より広く考えるには、getComputedStyle()関数を使用してください。要素の CSS プロパティ値を持つ文字列を返します。

console.log(getComputedStyle(someElement).opacity) //0.5
console.log(getComputedStyle(someElement).width) //47px
//and on, and on…
于 2013-04-15T04:21:21.903 に答える