首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用于删除类的IE7和setAttribute()

用于删除类的IE7和setAttribute()
EN

Stack Overflow用户
提问于 2011-06-24 16:31:35
回答 1查看 4.2K关注 0票数 2

我有一个非常有趣的问题。我正在写一个插件,它允许你放大/缩小图像。我有三个按钮:关闭(关闭窗口),放大,缩小。放大/缩小按钮也有禁用的版本。当您达到最小/最大缩放量时,它将被激活。

如果您打开要缩放的图片,您可以看到一个活动的缩小按钮和一个禁用的放大按钮(因为我在打开时设置了最大值)。当您第一次单击缩小按钮时,放大按钮应该会删除禁用的类。它在Safara、Chrome、Firefox3.6/4/5、IE8上运行良好,但在IE7上运行不佳。

放大按钮有一个ID和类,我想强制IE7从元素中删除特定的类。首先,我使用了removeClass(),但它不起作用。然后我使用setAttribute(),它可以在除IE7之外的所有浏览器中运行。

下面是一个示例。所以,当你打开要缩放的图像时,缩小按钮有ID=“放大按钮”和5个类别:放大图标,放大图标,放大按钮,禁用缩放按钮,禁用放大按钮。我想删除两个“禁用”类。所以我使用这个:

代码语言:javascript
运行
复制
var elementZoomButtonIn = document.getElementById("zoom-button-in");
elementZoomButtonIn.setAttribute("class", "zoom-icon zoom-icon-small zoom-button-in");

在插入未禁用的类之前,我尝试将类设置为空,但不起作用。

此方法在IE7中有效吗?(-:

谢谢,伙计们!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-06-24 16:48:37

setAttribute()getAttribute()通常在IE 7和更早版本中被破坏(以及在更高版本中的兼容模式)。请改用元素的className属性:

代码语言:javascript
运行
复制
elementZoomButtonIn.className = "zoom-icon zoom-icon-small zoom-button-in";

即使setAttribute()getAttribute()在IE中没有被破坏,使用等价的DOM属性通常仍然更容易和更可靠。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6465269

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档