侧边栏壁纸
博主头像
落叶人生博主等级

走进秋风,寻找秋天的落叶

  • 累计撰写 130562 篇文章
  • 累计创建 28 个标签
  • 累计收到 9 条评论
标签搜索

目 录CONTENT

文章目录

在做svg兼容ie时的几点收获

2024-05-13 星期一 / 0 评论 / 0 点赞 / 94 阅读 / 1296 字

为了在ie上兼容svg,我真是弄了好久啊。 1. path属性改变,但页面不实时更新: 把path清空,在append var oldNode = $("path", context)[0];var

为了在ie上兼容svg,我真是弄了好久啊。

1. path属性改变,但页面不实时更新: 把path清空,在append

var oldNode = $("path", context)[0];	var clonePath = oldNode.cloneNode(true);var parentTmp = $("path", context).parent();$(parentTmp).empty();$(parentTmp).append($(clonePath));

2. text,tspan不能直接通过$.html()塞入:使用createElementNS, setAttribute

for(var i = 0; i < splitNameArr.length; i++){var txtSpan = document.createElementNS('http://www.w3.org/2000/svg','tspan');txtSpan.setAttribute("x", 50);txtSpan.textContent = splitNameArr[i];				if(i == 0){	txtSpan.setAttribute("y", firstEleY);}else{	txtSpan.setAttribute("dy", 15);}		$("text", this.dom).append(txtSpan);}

3. getBoundingClientRect,对于带有marker属性的path,计算出来的height,width值有误,要比实际值大很多。解决的方案:getBBox()

var p = $("path", this.dom)[0].getBBox();return {width: p.width, height: p.height};

4. 鼠标offsetX,offsetY值不对,进场跳动,不明原因。

_this.endX = e.pageX - $(svg).offset().left;_this.endY = e.pageY - $(svg).offset().top;

 

广告 广告

评论区