如何测试“nohref”的存在IE6/7 中的属性?
area
标记上的 nohref
属性会导致区域从图像映射中明确排除。它适用于 IE 6-7,因为当鼠标悬停在标记为此类的区域上时,您可以看到鼠标指针没有改变。矩形有一个“nohref”,而蓝色圆圈没有。
但是,我想不出任何办法以编程方式在 IE 6 和 IE 6 中运行的 Javascript 中测试它。 7. 无论属性是否存在,getAttribute
始终返回 false
。 jQuery .attr
也不起作用。
The nohref
attribute on an area
tag causes the are to be specifically excluded from an image map. It works in IE 6-7 in that you can see the mouse pointer is not changed when hovering over an area marked as such. The rectangle has a "nohref" and the blue circle doesn't.
However, I can't figure out any way to programatically test for it in Javascript that works in IE 6 & 7. getAttribute
always returns false
whether the attribute is present or not. jQuery .attr
doesn't work either.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
根据 XHTML 标准, nohref 属性应该是写为
nohref="nohref"
。如果这样做,您可以轻松测试它,因为.attr('nohref')
将返回字符串"nohref"
。然而,此属性在 HTML5 中不再受支持。来自 W3C 工作草案:
因此,您可以通过
if($('area').attr('href')){ /* href is set */ }
进行测试。By the XHTML standard, nohref attributes should be written as
nohref="nohref"
. If you do that, you can easily test for it as.attr('nohref')
will return the string"nohref"
.However this attribute is no longer supported in HTML5. From the W3C working draft:
Therefore you can test for it by
if($('area').attr('href')){ /* href is set */ }
.要选择具有
nohref
属性的area
元素,您可以使用属性等于表示法:要演示这一点的使用:
JS Fiddle 演示。
参考:
To select the
area
elements with thenohref
attribute you can use the attribute-equals notation:To demonstrate this being used:
JS Fiddle demo.
Reference: