如何将两个 html 元素绑定在一起,当第一个元素被删除时,第二个元素也从 DOM 中删除
How to bind two html elements together that when first one is removed second one also removed from DOM
问题陈述如下:我有具有复杂 html 布局的单页应用程序。
此布局中有一个锚标记(带有用户电子邮件的div)。
当一个人单击该锚点时,应用程序会显示弹出框。
弹出框被渲染为"正文"。由于锚点容器会剪切弹出框,我无法在锚点内部或附近渲染它,因为弹出框大小大于容器。
所以问题是当锚元素从 DOM 中删除时删除/隐藏弹出框的最佳方法是什么(它不是直接删除而是通过删除其父元素之一)。
我看到两个选项 - 一个是显示的弹出窗口的 setInterval 以检查锚点是否仍然存在。
另一种方法是在显示/隐藏弹出窗口时注册/取消注册一些回调,并在单页应用逻辑实现中更改 dom 时调用它们以确保锚标记的存在。
我只是想可能有另一种方法可以实现位于不同 DOM 树分支中的锚点和弹出框之间的这种绑定?
我建议通过给弹出框一个唯一的名称(可能使用每次创建弹出框时增加的 javascript 索引变量)并将其存储在锚点的 rel 属性中,将弹出框链接到锚点。确保锚点具有特定的类(例如"has-popover")
如果要删除定位点的父元素,请检查具有"has-popover"类的子元素。 使用定位点的 rel 属性获取弹出框的元素 ID,以便随后也将其删除。
相关文章:
- 删除对HTML元素的拖动
- 如何覆盖锚点元素's href目标,并在我点击转到目标javascript时删除其他错误
- 从所有元素中删除HTML5验证
- 如何检查元素的内容是否为空,如果为空,请在jquery中删除该元素
- 从组件状态的数组中删除元素
- angularjs删除动态形式元素中的特殊字符
- Mongoose-在更新中删除数组元素
- 从数组中删除元素的最佳方法是:javascript/jquery
- 删除不起作用的父元素和所有子元素
- 一些元素没有从数组中删除
- 正在尝试删除子元素的最后一个子元素
- JavaScript-如何按类查找元素并删除此类
- 正则表达式条件来删除元素
- Small Javascript从动态表单中删除多个元素的问题
- javascript:在元素删除后停止setInterval
- JQUERY:动态 AJAX 和 html 元素删除
- AngularJS ngRepeat元素删除
- AngularJS & lt; select>使用ng-model和ng-options在元素删除时被破坏
- jQuery UI datetimepicker绑定到错误的输入后DOM元素删除
- 防止 jQuery 在元素删除时取消绑定事件