0

ページにメディアプレーヤーを埋め込んでいました。

そして、プレーヤーの幅と高さのサイズを変更するためのブラウザーソリューションを検出しました。

しかし、Firefoxでは機能しないことがわかりました。

アドバイスお願いします。ありがとう。

<object id="player" width="300" height="400" classid="CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95" codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701">

    <PARAM NAME="stretchToFit" Value="1"> 
    ...................
    <embed type="application/x-mplayer2" pluginspage="http://www.microsoft.com/Windows/Downloads/Contents/Products/MediaPlayer/" name="MediaPlayer" src="http://xxxxxxxxxxxxxx" 
    showcontrols="1" showpositioncontrols="0" showaudiocontrols="1" showtracker="0" showdisplay="0" showstatusbar="1" showgotobar="0" 
    showcaptioning="0" autostart="1" autorewind="0" animationatstart="0" transparentatstart="0" allowchangedisplaysize="0" 
    allowscan="0" enablecontextmenu="0" clicktoplay="0" width="300" height="400" stretchToFit="1"></embed>

jquery/javascript コードは次のとおりです。

jQuery(document).ready(function() {

        var height;
        var width;
        var paddingtop;

        if (screen.width <= 1280) {
            width = ($(window).width() - 20);
            height = width / 2;
            paddtingtop = 4;

        }
        else if ((screen.width > 1280) && (screen.width < 1920)) {
            width = ($(window).width() - 20);
            height = width / 1.7;
            paddtingtop = 7;

        }
        else {
            width = ($(window).width() - 20);
            height = width / 1.7;
            paddtingtop = 7;

        }
        $("#player").css('width', width);
        $("#player").css('height', height);
        $("#player").css('padding-top', paddtingtop);

    });
4

1 に答える 1

0

幅については、ウィンドウの幅を20px未満にするためにjavascriptを必要とせず、cssを使用するだけです。簡単な例を次に示します: http://jsfiddle.net/m5GaA/

ここで、より完全な css の回答を見つけることができます: xHTML/CSS: 内部 div を 100% 幅から別の div 幅を引いたものにする方法

すでに述べた最後のelseと同様に、2番目のifの (screen.width > 1280) は不要です。条件は前のifによってすでに保証されています。

終了タグがありません これもあなたのページにありませんか? これが原因である可能性があります。

他に機能しない理由はわかりませんが、おそらく html/css が問題の根本的な原因です。それでも必要な場合は、デモを提供してみてください。

jsfiddle コード:

#HTML
<div id=wrapper>
  <div id=inner>
    content must be present
  </div>
</div>​

#CSS
#wrapper {
    overflow:hidden;
    background-color:red;         
    padding: 0px 10px 0px 10px;
    width:100%;
    height:100%;    
}

#inner {
    float:left;
    background-color:blue;       
    width:100%;
    height:100%;
}
于 2012-05-04T10:29:28.200 に答える