状況:
私の顧客は、ページ内に SVG 図面を配置するように求めています。だから私の部分は
<svg ..>
..
</svg>
と
<script>..</script>
私はいくつかのプライベート(つまり、std.attrなし)情報を図面に追加したい(必要です)(私は今charlyと呼んでいます):これ(この2つのバリアント)はfirefoxでうまく機能します:
<svg id='myHorribleDrawing' xmlns='http://www.w3.org/2000/svg' ....>
...
<g id='000000000230865' charly ='xxx' ... >
<charlydata charly ='xxx '/>
<use x='304.0' y='74.5' width='30' height='30' xlink:href='#path' />
</g>
...
</svg>
両方とも正常に動作します - 属性または不明な要素を押し付けるだけです。Firefox (たとえば) は、何も問題がなかったかのようにそれを食べます。
しかし、これは - ただ - 間違っていると確信しています。
私の研究では、DTD を変更することになりました (難しいことです) が、私は DOCTYPE の所有者ではありません! だから別の試み
2番目の試みは、プライベート名前空間(mycharly)を宣言することでした
<svg xmlns='http://www.w3.org/2000/svg' version='1.2'....
xmlns:mycharly='http://www.example.org/charles'>
...
<g ...>
<mycharly:charlydata charly='blind'>
(and close it all)
正常に動作し、ブラウザは何の抗議もなしに受け入れます。唯一の違いは、jQuery が 'mycharly:charlydata' セレクターを好まないことです ...
私は何時間も探していましたが、これを行う正しい方法は何であるか、そして私は、方法がないという考えに行き着いていますか、それとも「すべての木のために木が見えない」だけですか? (オーストリアの格言)