在css的身体背景的速记

时间:2016-12-22 15:28:59

标签: jquery css

我想知道如何使用css背景属性的简写。 我想用jquery覆盖现有的图像,但没有运气。 我有类似下面的内容:

body {
    background-image: url('../images/bg-dark.jpg');
    background-repeat:no-repeat;
    background-position: center center;
    background-attachment:fixed;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    background-color: #464646;
}

Jquery的:

 $('body')
     .css('background', 'assets/images/bg-white.jpg')
     .css('background-repeat', 'no-repeat');
     .css('background-position', 'center center');
     .css('background-attachment', 'fixed');
     .css('background-size', 'cover');

2 个答案:

答案 0 :(得分:7)

.css('background', 'assets/images/bg-white.jpg')错了。您不能将任意字符串分配给CSS background(或background-image)属性。您需要为其指定 url

.css('background', 'url(assets/images/bg-white.jpg)')

你也在滥用分号。他们终止整个陈述,而不是单独的行。您的链式.css调用不能以分号结尾,在整个链的末尾需要一个分号。

答案 1 :(得分:1)

您可以像这样设置图像属性:

只需通过jQuery' css()方法传递属性,如下所示:

$("p").css({"background": "url('link_of_image')", "width": "400px"});



$(function() {
  
  $('#img').css(
    {
      "background": "url('https://imge.com/wp-content/uploads/2013/07/773_3701590-1920x1080.jpg')",
      "width": "600px"
    }
  );
  
})

#img {
  height: 300px;
  width: 300px;
}

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div id="img">
  
</div>
&#13;
&#13;
&#13;

希望这有帮助!