可移植函数,用于在单击时从DOM中删除元素
Portable function to remove element from DOM when clicked?
我有一些jQuery
"弹出窗口",我知道您可以在运行时将onClick
事件应用于对象,如下所示:
$('.popup').on('click', 'img.close', function() {
// Remove the popup
});
然而,我不确定如何根据点击来区分哪个弹出窗口被关闭,而不是全部关闭。我是否必须将this
关键字作为参数传递?
基本上,添加到文档中的所有弹出窗口都由以下样板代码组成:
<div class="popup">
<div class="toolbar">
Popup Title Here
<img src="close.png" class="close"></div>
</div>
<p class="text">Popup content/data here<p>
</div>
我想将标记保留为这样,并控制onClick
事件以及在运行时加载的函数内部关闭哪个弹出窗口。这可能吗?
目前,我正在为每个弹出窗口分配一个ID
,并根据弹出窗口的ID
删除它们,但这种方法似乎是多余的,我希望有一种更干净的方法来处理它。
您可以使用.closest()查找单击的close
元素的父.popup
元素
$('.popup').on('click', 'img.close', function() {
$(this).closest('.popup').remove(); //or .hide() if you just want to hide the popup
});
相关文章:
- 如何从DOM中删除Aloha编辑器
- 如何修复:当javascript更改DOM时,iOS会删除CSS文件
- 从dom中删除任何元素后,Touchmove事件停止触发
- IE9-添加和删除DOM元素会破坏父keydown事件
- 如何使用jQuery从DOM中删除所有单选按钮元素
- 如何在删除脚本后刷新/重新编译dom中的脚本
- JQuery.删除DOM树中的上一个同级
- 在jquery中是否有任何方法或位置可以编写从Dom中删除页面后调用的方法
- 如何从DOM(KnockoutJS)中删除$data、$parent等
- 从 DOM 中删除/删除 Javascript 用户定义的数组
- 从 DOM 数组中删除 DOM 对象
- 通过删除其相关的 DOM 存在来重新初始化 jQuery 插件
- 在 IE 中从 DOM 中删除选项时,滚动选择元素会跳到顶部
- 如何在单击按钮时删除 DOM 元素
- 如何删除DOM事件处理程序的重复JavaScript代码
- 删除在加载dom之后创建的动态元素
- 在p5-dom上单击提交按钮后,我如何删除该按钮
- 删除的DOM元素仍然显示在移动safari(iOS 5.1)中
- Angular指令删除只调用一次的DOM元素
- chrome javascript dom删除iframe背景图像