2012-03-01 8 views

答えて

2

使用ternary operatorをアプリケーションがIEを使用して開かれているならば、自分のコードが実行すべきか、他のサンプルコードはno..hereでチェックする必要があります:

header: true, 
height: (Ext.isIE ? 160 : 150), 
width: 355, 

UPDATE
がを置き換えとExt.isIE

アップデート2
三項演算子を使用する別の方法は、immediate functionを使用している:

header: true, 
height: (function() { 
    if (Ext.isIE) 
    return 160; 
    //else if (Ext.isChrome) 
    // return something else; 
    else 
    return 150; 
}), 
width: 355, 

もう一つの選択肢は、パネルの設定を設定する前に必要な高さを含む変数を定義することです:

// this is done before setting up config, but in the same scope 
var neededHeight = 150; 
if (Ext.isIE) 
    neededHeight = 160; 

// setting up config 
    // ... 
    height: neededHeight, 
    // ... 
+0

-1このコードは機能しません。 – pllee

+1

@pllee、私は、この考え方で三元演算子がどのように助けてくれるのかを示すことを考えていたと思います。さらに、 'ie'と' browser'変数が同じスコープで定義されている場合、コードは動作します。 –

+0

@pllee、あなたは正しいです。しかし、Bobikが言ったように、その考え方は、この状況で三元演算子がどのように役立つかを示すことであった。しかし、私の答えを更新しました。 –

2

あなたはExt.isIEプロパティを使用して、ブラウザがIEかどうかを判断できます。

height: Ext.isIE ? 160 : 150 
関連する問題