3

ファイル名に括弧が付いた背景画像があります。

<DIV style="BACKGROUND: url('http://site.com/image(8).png');"></DIV>

これは通常は問題ありません。ファイル名の前後に引用符があるため、混乱することはありません。

ただし、IEの開発者ツールを見ると、ブラウザが何らかの理由で引用符を削除していることがわかります。

<DIV style="BACKGROUND: url(http://site.com/image(8).png);"></DIV>

それでも、それは機能するので、大したことではありません。jqueryのclone関数を使おうとすると問題が発生します。

どうやら、clone()の後の出力は、上記の画像のURLをIE8で有効であると認識せず、それを取り除きます(IE7を含む他のブラウザーは問題ありません)。そして、私はこれで終わります:

<DIV></DIV>

誰もがこれを修正する方法を知っていますか?つまり、IE8のURLに括弧を付けて背景画像を複製します。

ありがとう。

また、補遺として、関連する要素にインラインスタイルを使用する必要があるため、別のスタイルシートを使用することはお勧めしません。

Ad2:エスケープ時に、ブラウザでレンダリングした後、エスケープされたエンティティはエスケープされなくなります。ページの読み込み後に再度クローンが作成され、クローンを作成するために選択したオブジェクトには、エスケープされていない文字が含まれています。

4

4 に答える 4

9

HTMLエンティティで括弧をエスケープしないでください(ブラウザは属性内のエンティティをリテラル文字に相当するものとして扱うように正しいです)、URLエンティティでそれらをエスケープします:

(=%28
)=%29

于 2009-07-21T23:53:43.620 に答える
7

引用文字がありません: "

<DIV style="BACKGROUND: url('http://site.com/image(8).png');></DIV>

する必要があります

<DIV style="BACKGROUND: url('http://site.com/image(8).png');"></DIV>

ここで、stackoverflowコードフォーマッターでさえコードが異なる形式になっていることがわかります

于 2009-07-21T23:29:47.897 に答える
0

かっこをエスケープするとうまくいくと思います。TBH、それは私がURLでそれを使用する方法になるでしょう。

于 2009-07-21T23:26:37.340 に答える
0

&#40;左括弧の場合'('

&#41;右括弧の場合')'

多分それは問題を解決しますか?

于 2009-07-21T23:33:48.543 に答える