0

javascript を使用してすべての位置を増やすにはどうすればよいですか?ページ内のピクセル数を固定しますか?

例: いくつかの固定位置要素を持つ Web ページがあり、javascript を使用して上部にツールバーを挿入します。ツールバーが 40 ピクセルのスペースを占めるようになったので、すべての固定要素は 40 ピクセル離れて配置されます。

固定されたすべての位置を 40px 増やすツールバーを導入すると同時に起動できる JavaScript が必要です。

4

3 に答える 3

0

各固定要素に共通のクラスを与えて、それらすべてを対象にすることができます。

<div class="fixed">
    some fixed element
</div>

js (jquery メソッド):

$('.fixed').each(function(){
    $(this).css('top', $(this).css('top') + 40 + 'px'); 
});

jqueryを使用していない場合は、aurelの回答を参照してください

于 2012-12-13T22:11:47.180 に答える
0

JS でスタイル属性を変更することにより、要素の上部または下部の CSS プロパティを設定できます。

于 2012-12-13T22:09:09.783 に答える
0

次のようなことをしなければならないと思います:

var elems = document.all || document.getElementsByTagName("*");
// I know document.all isn't ideal, but it saves a function call if it's there ;)
var l = elems.length, i, stl;
window.getComputedStyle = window.getComputedStyle || function(e) {return e.currentStyle};
for( i=0; i<l; i++) {
  stl = window.getComputedStyle(elems[i]);
  if( stl.position === "fixed") {
    elems[i].style.marginTop = ((parseInt(stl.marginTop,10) || 0) + 40) + "px";
  }
}

の使用とmargin-topは対照的に、topのようなものを許可することですtop:50%。もちろん、margin-topパーセンテージも問題になる可能性がありますが、頻度は低くなります。

于 2012-12-13T22:10:26.840 に答える