jquery 创建 SVG DOM 的处理方法

使用的是 createElement 方法 这个是无法生成SVG DOM的

可以使用下方的方法生成

[js]  view plain copy
 
  1. var svgns = "http://www.w3.org/2000/svg";   
  2. $.svg = function $svg(tagName) {   
  3.    return $(document.createElementNS(svgns, tagName));   
  4. };  

 

 

判断一个dom元素是否是svg dom的方法

[js]  view plain copy
 
  1. function isSVG(el) {  
  2.    return el && el.nodeType === 1 && (el instanceof window.SVGElement)   
  3. }  

 

 

上次采用SVG来做按钮来适应动态改变颜色需求,但是需要用JS自动隐藏和显示。发现用jQuery的addClass("hide")方式无法写进去。我猜测是因为SVG不属于HTML常规DOM元素才会无效果,之后我在SVG上包了一个DIV后解决了这个问题。

其实还有一种可以用原生JS去添加class如下。

document.getElementById("svg").setAttribute("class","hide");
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值