【在线等】jquery通过append添加的svg标签无法显示

【在线等】jquery通过append添加的svg标签无法显示,第1张

首先,jquery是 *** 作普通xhtml的,对应svg这种特殊的标签,或者说xml,浏览器如何区分,当然是通过命名空间:namespaceURI,比如普通html的是http://www.w3.org/1999/xhtml,而svg也有自己的命名空间:http://www.w3.org/2000/svg,jquery在 *** 作的时候没有加以区分,因此导致了这样的错误。怎么办,使用setAttributeNS创建svg标签即可。

其次,我们创建大量标签的时候,喜欢innerHTML=template这种方式,svg也可以,应该说大部分浏览器都可以,可是有些浏览器不可以,我们就需要自己提供兼容的innerSVG方法了。

最后,关于上面说的二点,你都可以对比这个例子。

首先1处改成node=svgdoc.createElementNS('http://www.w3.org/2000/svg', 'rect')是必须的,这样才能创建一个svgRect元素。

其次,IE8不支持svg。IE9以上在运行这个文件的时候会屏蔽动态内容,在页面下方会有提示,点击允许就行了。火狐和chrome可以直接运行这个文件。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11767216.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存