JQuery:如果 href 为空则隐藏锚点
已经研究这个有一段时间了。基本上,我需要检查带有 .pdf-download
类的锚标记上的 href
位置是否为空,如果是,则将其隐藏。
我尝试了一些选择,但没有运气。这是我到目前为止所拥有的:
$("a.pdf-download").each(function (i) {
if ($('[href]:empty',this).length == 1) {
$(this).hide();
} else {
$(this).show();
}
});
Been on this one for a while now. Basically, I need to check where a href
on an anchor tag with the class .pdf-download
is empty, and if it is, hide it.
I have attempted a few options but with no luck. This is what i have so far:
$("a.pdf-download").each(function (i) {
if ($('[href]:empty',this).length == 1) {
$(this).hide();
} else {
$(this).show();
}
});
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(7)
请注意,您还可以使用 属性选择器 在 css 中执行此操作:
不过 ie6 不支持此操作。
Note that you can also do this in css with attribute selectors:
This is not supported in ie6 though.
您还可以使用 jQuery 选择器来执行此操作,如下所示:
You can also do this with a jQuery selector, as follows:
使用此解决方案。当
href
属性未定义时,它也会产生所需的结果。如果您使用 CSS 选择器 (JQuery),则不会检测到不存在的href
属性。没有必要使用 JQuery 方法来获取
href
属性,因为this.href
同样可读、更快并且得到普遍支持。Use this solution. it will also produce the desired results when the
href
attribute is not defined. If you use a CSS selector (JQuery), non-existenthref
attributes will not be detected.It's not necessary to use a JQuery method to get the
href
attribute, becausethis.href
is just as readable, faster and also universally supported.像这样的东西会起作用吗?
Would something like this work?
我自己是一个 jquery 初学者,但这就是我要做的:
演示: http://jsfiddle.net/BZq9c /1/
I am a jquery beginner myself, but thats how I would do it:
Demo: http://jsfiddle.net/BZq9c/1/
全能演示:http://jsfiddle.net/each/j9DGw/
Almighty Demo: http://jsfiddle.net/each/j9DGw/
或者
or