jquery - 试图根据屏幕分辨率显示不同的背景图像?

标签 jquery css background-image

我遇到了一个问题。我正在尝试根据屏幕分辨率加载不同的图像,但我尝试了下面列出的代码,但它没有加载背景。说的时候我有一个 css 和 jquery 设置,但背景没有显示。我不知道我哪里出错了?

@media (min-width:800px) { .w800 { background-image: url(images/DCBG800.png);                      @media (min-width:1024px) { .w1024 { background-image: url(images/DCBG1024.png);
@media (min-width:1152px) { .w1152 { background-image: url(images/DCBG1152.png);
@media (min-width:1280px) { .w1280 { background-image: url(images/DCBG1280.png);
@media (min-width:1360px) { .w1360 { background-image: url(images/DCBG1360.png);
@media (min-width:1366px) { .w1366 { background-image: url(images/DCBG1366.png);
@media (min-width:1600px) { .w1600 { background-image: url(images/DCBG1600.png);
}

   <script type="text/javascript">
   function setImageClass() {
switch(true) {
    case($(window).width()>1600): $("body").removeClass("w800 w1024 w1152 w1280 w1360 w1366").addClass("w1600");
    break;
    case($(window).width()>1366): $("body").removeClass("w800 w1024 w1152 w1280 w1360 w1600").addClass("w1366");
    break;
    case($(window).width()>1360): $("body").removeClass("w800 w1024 w1152 w1280 w1366 w1600").addClass("w1360");
    break;
    case($(window).width()>1280): $("body").removeClass("w800 w1024 w1152 w1360 w1366 w1600").addClass("w1280");
    break;
    case($(window).width()>1152): $("body").removeClass("w800 w1024 w1280 w1360 w1366 w1600").addClass("w1152");
    break;
    case($(window).width()>1024): $("body").removeClass("w800 w1152 w1280 w1360 w1366 w1600").addClass("w600");
    break;
    default: $("body").removeClass("w1024 w1152 w1280 w1360 w1366 w1600").addClass("w800");
    break;
}
   }

    $(document).ready(function() {
setImageClass();
    });

    $(window).resize(function() {
setImageClass();
    });

最佳答案

您没有关闭 CSS 示例中的任何大括号。此外,尝试摆脱“body”上的所有类(即现在也是 javascript),并将 background-image css 规则直接应用于“body”元素选择器,如下所示:

@media (min-width:800px) { 
   body {
       background-image: url(images/DCBG800.png); 
   }
}

希望对你有帮助

卢克斯

关于jquery - 试图根据屏幕分辨率显示不同的背景图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10693084/

相关文章:

php - 如何根据应该显示的日期和时间显示 json 接收的字符串元素?

javascript - 如何检测网页上的空白区域

javascript - 如何让盒子自动向下移动?

Android:选择器中禁用按钮的文本颜色未显示?

html - 在 IE8 中显示背景图像

javascript - window.setInterval() 调用的 jQuery .toggle() 不起作用

javascript - 更改 'greyed-out-ness' 的 html Bootstrap 按钮和 javascript 的级别

css - 如何将 span 元素大写

css - 单选按钮不起作用。将选择但不选择背景颜色

css - Twitter Bootstrap 背景图片填充高度 100%