關於瀏覽器的版本中,玩家的高度應改變使用Javascript - 我怎樣才能正確地縮小這個代碼
if older then ie9
//height is fixed
else
//height is auto
上面的代碼工作,但,這是我見過的最糟糕的事情,因爲我不重複自己一次又一次,當這條件只有一條線改變時。
<script type="text/javascript">
$(document).ready(function() {
if ($.browser.msie && $.browser.version.substr(0,1)<9) {
$("#jquery_jplayer_1").jPlayer({
ready: function()
{
$(this).jPlayer("setMedia",
{
m4v: "/video/videoK.mp4",
ogv: "/video/videoK.ogg"
}).jPlayer("play");
$('article.about-k').hide();
olark('api.box.hide');
},
swfPath: "/scripts/",
supplied: "m4v, ogv",
size: {
width: "100%",
height: "400px" // THE ONLY CHANGE IS HERE
},
backgroundColor: "#fff",
click: function() {
$(this).jPlayer("play");
},
ended: function() {
$('.jplayer-k').hide();
$('article.about-k').show();
}
})
} else {
$("#jquery_jplayer_1").jPlayer({
ready: function()
{
$(this).jPlayer("setMedia",
{
m4v: "/video/videoK.mp4",
ogv: "/video/videoK.ogg"
}).jPlayer("play");
$('article.about-k').hide();
olark('api.box.hide');
},
swfPath: "/scripts/",
supplied: "m4v, ogv",
size: {
width: "100%",
height: "auto" // THE ONLY CHANGE IS HERE
},
backgroundColor: "#fff",
click: function() {
$(this).jPlayer("play");
},
ended: function() {
$('.jplayer-k').hide();
$('article.about-k').show();
}
})
}
});
</script>
正如評論所指出的那樣,唯一的改變是在一條線上。 我怎樣才能重拍這個,而不是愚蠢地重複自己?
height: "auto" //THIS IS THE ONLY DIFFERENCE!
請指點
小題外話,但是,'$ .browser.version.substr(0,1)'將最有可能返回'1'的IE 10可能是不必要的。改用'parseInt($。browser.version,10)'。 –
@FabrícioMatté我沒有得到如何使用:'parseInt($。browser.version,10)<9'?瀏覽器版本少於9 ... ...沒有... :) – MEM
'if($。browser.msie && parseInt($。browser.version,10)<9){'',10'只是[ radix(base)](https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/parseInt),指定主要版本將在十進制系統中解析。 –