有没有一种方法可以从<a>链接
Is there a way to access a containing div from an <a> link in Javascript?
我想做的是单击div中的图像链接,并使包含图像链接的div消失(display:none;)。现在我的html有以下结构
<div id="one">
<div>
Words Words Words
<a href="javascript:void(0);" onClick="hideDiv('#one')";>
<img src="foo.jpg" />
</a>
</div>
</div>
<div id="two">
<div>
Words Words Words
<a href="javascript:void(0);" onClick="hideDiv('#two')";>
<img src="foo.jpg" />
</a>
</div>
</div>
hideDiv()函数如下所示:
function hideDiv(divId) {
$(divId).hide();
}
这很好用,但可能有点麻烦。我更希望的是,不需要通过id明确定义我想要隐藏的div,也不需要让Javascript捕捉链接点击事件并执行类似$(this_link.parent_div.parent.div).hide();
的操作。不幸的是,我不知道该怎么做,但我相信一定有办法!
与其有一个包含div
的id,不如有一个公共类,然后使用它。
HTML
<div class="container">
<div>
Words Words Words
<a href="javascript:void(0);">
<img src="foo.jpg" />
</a>
</div>
</div>
Js
$('a').click(function(){
$(this).closest('.container').hide();
});
如果你不想添加任何类,那么你可以简单地尝试一下。
$('a').click(function(){
$(this).parent().parent().hide();
});
工作演示-http://jsfiddle.net/ShankarSangoli/MvkEa/
参考文献:
.closest()
-http://api.jquery.com/closest/.parent()
-http://api.jquery.com/parent/
一个很好的方法是向要选择的所有div添加一个新类:
<div id="one" class="linkDiv">
然后执行:
$(this).parents('.linkDiv').hide();
这个解决方案不会让你依赖于在你的链接和你想要隐藏的容器之间总是有两个级别的div。
使用parent()
方法获取元素的父级。
<script type="text/javascript">
function hideDiv(a) {
$(a).parent().parent().hide();
}
</script>
<div id="two">
<div>
Words Words Words
<a href="javascript:void(0);" onClick="hideDiv(this)";>
<img src="foo.jpg" />
</a>
</div>
</div>
或者,不引人注目地:
<script type="text/javascript">
$(document).ready(function(){
$(".hideable a").click(function(){
$(this).parents(".hidable").hide()
});
});
</script>
<div class="hideable">
<div>
Words Words Words
<a href="javascript:void(0);">
<img src="foo.jpg" />
</a>
</div>
</div>
我想你想要.parent()
http://api.jquery.com/parent/
我每天都有jquery文档页面,这对于这些类型的问题来说是一个令人难以置信的资源。
http://docs.jquery.com/Main_Page
相关文章:
- 链接所有<a>Meteor
- 如何制作href链接和<李>在一个包装中
- <中的链接;选择>下拉选项
- Javascript Show Hide-将切换操作从复选框更改为<a href>链接
- 通过<a>链接
- 使用类似汤博乐的<a>链接
- 链接问题:下一个字符包含在<a>TinyMce ui TinyMce中的标签
- 当单击<a>链接在chrome扩展中,popup.html如何保持打开状态
- 删除所有<link>iframe中的元素
- React路由器<link>如何在Jest测试中获取href的值
- 从<link>标签
- Regex从除<link>标签
- 如何更改CSS文件或隐藏<link>标签
- 是否可以使用HTML从任意字符串创建Jquery对象,例如var$newlink=$('<a>新链接
- Regex查找<a>包含指向特定文件类型的链接的标记
- 根据关联链接更改标题的颜色?每次点击<a>应该使关联的h2变成蓝色
- 是<链接rel=“;样式表“>并且<脚本>标签意义重大
- 有没有一种方法可以包括<脚本>或者<link>在所有页面中显示一次
- 防止<a>按ENTER键时无法打开链接
- 用于转换<李>行转换为搜索链接