每当我用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语法。如果是这样的话有机会避免这种情况吗?我的主要问题是背景图片网址上的双引号。
答案 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');"