1

我正在使用 jquery 1.7.1

获取属性值

请参考下面的外部 HTML 元素

$element.get(0).outerHTML


<?xml:namespace prefix = "v" ns = "urn:schemas-microsoft-com:vml" />
<v:shape id=container_vml_CrosshairVertical style="HEIGHT: 1000px; POSITION: absolute; LEFT: 0px; TOP: 0px; VISIBILITY: visible; WIDTH: 1000px" coordsize = "1000,1000" fillcolor = "white" strokecolor = "black" strokeweight = "1pt" path = " m342,58 l342,374 e"></v:shape>

当我使用以下代码获取属性值时,即使它有一些值,它也会返回未定义的值。

$element.attr('path')-> 返回undefined

为现有属性设置新值

请参考下面的代码设置值属性

var val= '"m 386 58 l 386 374';

$element.attr('path',val);

它创建具有指定值而不是替换的新属性。请参考下面的outerHTML

<?xml:namespace prefix = "v" ns = "urn:schemas-microsoft-com:vml" />
<v:shape id=container_vml_CrosshairVertical style="HEIGHT: 1000px; POSITION: absolute; LEFT: 0px; TOP: 0px; VISIBILITY: visible; WIDTH: 1000px" path="m 386 58 l 386 374" coordsize = "1000,1000" fillcolor = "white" strokecolor = "black" strokeweight = "1pt" path = " m384,58 l384,374 e"></v:shape>

请看上面的 outerHTML 元素,它包含两个路径属性。我不知道为什么它会再次创建新属性?

谢谢,

湿婆

4

2 回答 2

1

Try

$element.prop('path',val);
于 2013-10-18T05:40:28.180 回答
1

我使用 javascript setAttribute 找到了更好的解决方案

element.setAttribute('path', val);

这将适用于所有类型的情况。

谢谢,

湿婆

于 2013-10-18T05:44:13.567 回答