避免使用jQuery内联css中的双引号

时间:2016-02-12 02:58:30

标签: javascript jquery html css

每当我用jQuery添加内联css时,它也会改变已存在的内联css的格式。例如,如果我在网址中没有任何引号的背景图片,我将添加类似

的内容
$('.element').css('padding', '10px');

它将重新格式化完整的内联css。 (例如background-color: #ffffff;转移到 - > background-color: rgb(255,255,255);

这是一个小小提琴。 https://jsfiddle.net/chickberger/ppas2zrh/1/

我猜这只是应用于内联样式的jQuery / javscript语法。如果是这样的话有机会避免这种情况吗?我的主要问题是背景图片网址上的双引号。

2 个答案:

答案 0 :(得分:1)

这不是jquery,而是浏览器 将代码替换为$('.style-me')[0].style.padding = '10px',不会发生任何变化。

它发生在mozilla中,它不会发生在chrome中。你无能为力。除了可能做

之类的属性
$('.style-me').attr('style',
  $('.style-me').attr('style') + ';padding:10px'
)

这是个坏主意。

答案 1 :(得分:0)

这通常是jQuery中属性修改的发生方式。它用这种格式重写DOM上的属性。

您可以在内联后台CSS规则

中使用单引号或转义引号
style="background-image: url('single/quotes/around/the/path');"