0

私は(明らかに)全画面表示に追加されたパネルを作成する全画面表示クラスを持っています。scss は次のとおりです。

.fullscreen-div {
  top: $navbar_height;
  right: 0;
  bottom: 0;
  position: fixed;
  z-index: 5;
  padding: 0px 10px;
  background: white;
}

他の特定のパネルが開いているときはいつでも、フルスクリーンを少し小さくして、他のパネルも収まるようにします。私は次のjavascriptでこれをやろうとしています:

function setWindowDimensions(){
    ...
    //Fullscreen width
    var fullscreen = $('.fullscreen-div');
    if(leftPanelPresence){
        fullscreen.css("left", leftPanelWidth);
    }else{
        fullscreen.css("left", 0);
    }
}

このコードは左パネルが表示されているときに正しく実行されますが、「左」スタイル属性のフルスクリーン div は、このコードを 2 回実行したときにのみ変更されます。最初はデフォルトの left: 0; のままです。.

jQuery 要素が正しく選択されているかどうか、id の leftPanelPresence が true であるかどうか、および leftPanelWidth が正しく設定されているかどうかを確認しました。

全画面ボタンは次のことを行います (coffeescript):

$(document).on 'click', '.evidence-header h4 i.icon-resize-full', ->
    evidenceView.addClass('fullscreen-div')
    setWindowDimensions()

leftPanelWidth はデフォルトで 200 に設定されています。

.css jQuery 行が実行されますが、変更がブラウザーに反映されていません。ブラウザでcssを調べると、0のままです。

4

1 に答える 1

-1

.css の引数は、.css ファイルに書き込むように文字列でなければなりません

leftPanelWidth の最後に「px」を追加する必要があります。

0 は null 値として解釈され、「px」なしで機能するため、デフォルト値で機能します

于 2013-10-08T09:32:38.653 に答える