情况:
我的客户希望我在他的页面中添加 SVG 绘图;所以我的部分减少到
<svg ..>
..
</svg>
和
<script>..</script>
我想(需要)在绘图中添加一些私有(即没有 std.attr)信息(我现在称之为 charly):这个(这两个变体)与 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 的所有者!所以再试一次
尝试第二个是声明一个私有 namspace (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' 选择器......
我搜索了好几个小时,正确的方法是什么,我最终的想法是,没有办法,或者我只是“因为所有的树而看不到树林”?(奥地利谚语)