我没有对此进行测试,但这在逻辑上应该有效:
'use strict';
$(document).ready(function(){
var body_w = $('body').css('width').replace('px', '') * 1;
var body_h = $('body').css('height').replace('px', '') * 1;
console.log(body_w + 'x' + body_h);
// Initial check
if (body_w > 1138 && body_h > 825) {
$('body').css({
'-webkit-background-size' : 'cover',
'-moz-background-size' : 'cover',
'-o-background-size' : 'cover'
'background-size' : 'cover'
});
}
$(window).resize(function(){
var body_w = $('body').css('width').replace('px', '') * 1;
var body_h = $('body').css('height').replace('px', '') * 1;
if (body_w > 1138 && body_h > 825) {
$('body').css({
'-webkit-background-size' : 'cover',
'-moz-background-size' : 'cover',
'-o-background-size' : 'cover'
'background-size' : 'cover'
});
}
else {
$('body').css({
'-webkit-background-size' : 'auto',
'-moz-background-size' : 'auto',
'-o-background-size' : 'auto'
'background-size' : 'auto'
});
}
});
});
它会进行初始检查是否应该使用cover
并在调整窗口大小时再次检查。
不要忘记删除最初的 CSS background-size
,因为它不再需要了。
#home{
background:url('imgs/back01.jpg') no-repeat top left fixed;
width: 1000px;
height: 725px;
}
注意:如果可能,请尝试升级您的 jQuery。我看到你使用 1.7.2,尝试使用 1.9.x