在IE7中使用JQuery删除属性

时间:2011-09-16 12:32:31

标签: jquery

$(myelem).removeAttr('attributeName');

在IE 7中不起作用。建议的解决方法是:

$(myelem).prop("attributeName", false);

$(myelem).prop("attributeName", null);

$(myelem).attr("attributeName", '');

如果您想要更改渲染或行为,这些都很好。我需要的是从源中实际删除属性。 E.g。

<p align="center"> 应该成为 <p> 上面的例子专注于这样做 <p align=""> 哪个会改变对齐方式,但属性仍然存在。

现在任何人都可以真正删除该属性吗?

我正在使用JQuery 1.6.1

2 个答案:

答案 0 :(得分:2)

myelem.removeAttribute('attribute name');

这应该可行,据我所知,IE7无法删除的唯一属性是事件处理程序。

请参阅此链接了解removeAttribute兼容性。

答案 1 :(得分:2)

尝试使用不带属性的新p标记完全替换p标记:

$(myelem).replaceWith("<p>"+$(myelem).html()+"</p>");