jquery在firefox中为后台返回null值

时间:2014-08-07 06:34:44

标签: jquery html css

我有以下html

<div style="opacity: 1; min-height: 405px; background: url(/website_blog/static/src/img/library/gauze-green-texture.jpg) repeat scroll 0px 0px / cover  rgb(8, 8, 8);" class="js_fullheight"></div>

现在在我的jquery中我试图获得'背景'然后它适用于chrome但在firefox它返回“”字符串

    var cover_background = $('.js_fullheight').css('background');

它重新运行null。所以请给我解决方案。我不想要'背景图片'。

我的明确问题是,我只想使用不使用背景图像或背景颜色的“背景”。正如我在chrome中提到这项工作而不是在firefox中,所以我想知道为什么firefox不支持这个?它我的问题或一般问题???

2 个答案:

答案 0 :(得分:1)

您的背景标记是&#34;内联&#34;或&#34;简写&#34;或者&#34;所有在一个&#34;。但是,它无效。您可以看到the correct usage on MDN

background: <image> <position> <size> <repeat> <attachment> <box>{1,2}
/* note: simplified version to fit without scrollbars */

为了获得最大的兼容性,您希望保持简单,并单独添加更多高级功能:

background: <color> <image> <position> <repeat>;
background-size: <size>;
(etc)

如果您的CSS属性格式不正确,则会被忽略。这意味着它甚至不会回归到颜色,并且您无法通过访问&#34;背景&#34;来获得任何结果。物业通过javascript。

您不希望以您在CSS中指定的顺序依赖.css("background")返回,因此您应该自己检索每个属性:

var bg_color = $(element).css('background-color');
var bg_image = $(element).css('background-image');
// etc.

答案 1 :(得分:0)

试试这个......

var backgroundProperty = $(".js_fullheight").get(0).style.background;

结果:

 "url("/website_blog/static/src/img/library/gauze-green-texture.jpg")
 repeat scroll 0px 0px / cover  rgb(8, 8, 8)"

DEMO

请参阅以下参考资料 REF