相关疑难解决方法(0)

使用 jQuery 更改 SVG 元素的“xlink:href”属性

我正在尝试使用点击事件更改“xlink:href”属性,到目前为止它部分工作。这就是我正在做的

HTML:

 <a href="#" class="ui-btn ui-corner-all ui-shadow editIcon" data-iconpos="top" data-transition="none" style="text-align:center">
<svg class="icon icon-pencil">
<use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#icon-pencil">   </use>
</svg>
</a>
Run Code Online (Sandbox Code Playgroud)

JS:

 $('a.editIcon').on('click', function () {


 if ($("a.editIcon svg").attr('class') == 'icon icon-pencil') {
     $("a.editIcon svg").attr("class", "icon icon-floppy-disk");
     $("a.editIcon svg use").attr("xlink:href", "#icon-floppy-disk");


 } else {
     myFunctionCall();
     $("a.editIcon svg").attr("class", "icon icon-pencil");
     $("a.editIcon svg use").attr("xlink:href", "#icon-pencil");



 }

 });
Run Code Online (Sandbox Code Playgroud)

发生的事情是我可以毫无问题地更改类,但是“xlink:href”属性没有改变,而是保留旧的(“#icon-pencil”),并添加了一个新的“ href" 属性(href="#icon-floppy-disk"):

<svg class="icon icon-floppy-disk">
<use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#icon-pencil" href="#icon-floppy-disk"></use>
</svg>
Run Code Online (Sandbox Code Playgroud)

我在这里缺少什么?谢谢!

html javascript jquery svg

3
推荐指数
1
解决办法
7932
查看次数

标签 统计

html ×1

javascript ×1

jquery ×1

svg ×1