2016-02-12 12 views
5

jQueryでインラインCSSを追加するたびに、既にそこにあるインラインCSSのフォーマットも変更されます。私は、URL内の任意の引用符なしの背景画像を持っており、たとえば、私はそれが完全なインラインCSSを再フォーマットしますjQueryインラインCSSで二重引用符を避ける

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

のようなものを追加します。 (また、例えば background-color: #ffffff;移転へ - 。> background-color: rgb(255,255,255);ここ

が少しフィドルある https://jsfiddle.net/chickberger/ppas2zrh/1/

Iamは、これはインラインスタイルに適用されますちょうどjQueryの/ javscript構文であることを推測する場合のthatsの場合。背景画像のURL上の二重引用符があるこの?私の主な問題を回避するためのいずれかの可能性があります。変更がjQueryに起こる属性どのように一般的だ

+1

私はこの問題をJS Fiddleで見ることができますが、なぜこれが問題なのかわかりません。それは正しく機能しているようです(少なくともChromeでは)。あなたはなぜ再フォーマットが問題を引き起こしているのかを詳しく説明しますか?たぶん私たちは解決策を提供することができました。 –

+0

開発ツールで 'outerHTML'をコピーした場合、URLの引用符は実際には' " ' –

+0

であり、CSSではなくスタイルを使用します –

答えて

1

で、引用符をエスケープ。
コードを$('.style-me')[0].style.padding = '10px'に置き換えてください。何も変更されません。

これはMozillaで発生しますが、Chromeでは発生しません。あなたはそれについて何もすることはできません。

$('.style-me').attr('style', 
    $('.style-me').attr('style') + ';padding:10px' 
) 

のような属性を使用している場合を除きます。

+0

Thx、働いています。 :) – paperboy

0

。それは、この形式でDOMの属性を書き換えます。

あなたは、単一引用符を使用することができ、またはそれはそれは、ブラウザの、jqueryのではありませんあなたのインライン背景CSSルール

style="background-image: url('single/quotes/around/the/path');" 
関連する問題