Javascript 从DOM中删除唯一ID
我在一个网站上工作,它实现了一个非常时髦的模式框,现在它已经超出了实现新功能的范围,所以我正在尽我最大的努力使用当前存在的功能。它的工作方式是每次创建新的模式窗口时,都会为其分配一个唯一的ID。。比如说Javascript 从DOM中删除唯一ID,javascript,prototypejs,Javascript,Prototypejs,我在一个网站上工作,它实现了一个非常时髦的模式框,现在它已经超出了实现新功能的范围,所以我正在尽我最大的努力使用当前存在的功能。它的工作方式是每次创建新的模式窗口时,都会为其分配一个唯一的ID。。比如说 <div id="window_1308937649703" class="dialog"> 我试图从另一个点击事件中破坏窗口,但我不确定实现这一点的最佳方法是什么。我想我可以使用dialog类来提取相关联的唯一的#window uid。是否还有一些javascript可以用来获取
<div id="window_1308937649703" class="dialog">
我试图从另一个点击事件中破坏窗口,但我不确定实现这一点的最佳方法是什么。我想我可以使用dialog类来提取相关联的唯一的#window uid。是否还有一些javascript可以用来获取elementsbyclassname('dialog'),并将其从DOM中完全删除?如果有帮助的话,我也可以使用原型库。我无法理解实际的模态脚本,所以我希望能找到一些解决方案 要从dom中完全删除该对话框,请使用:
function removeNodeByID ( nodeId){
var node = document.getElementById( nodeId );
node.parentElement.removeChild(node);
};
与
这样,您只需要您在问题中提到的对话框的ID即可检索。要从dom中完全删除该对话框,请使用:
function removeNodeByID ( nodeId){
var node = document.getElementById( nodeId );
node.parentElement.removeChild(node);
};
与
通过这种方式,您只需要您在问题中提到的对话框的ID即可检索。对于原始JavaScript中的GetElementsByCassName(),您可以做的不多(除了滚动您自己的),尽管Prototype对此有一些好处
另一种可能的方法:关闭按钮是否具有通用ID?如果是这样的话,并且如果您能够添加插件(对不起,我从未使用过Prototype),那么您可以看看这个,了解在选择关闭按钮后如何触发该按钮上的单击事件。对于原始JavaScript中的:
GetElementsByCassName()
,您可以做的不多(除了滚动自己的),虽然原型对此有一些好处
另一种可能的方法:关闭按钮是否具有通用ID?如果是这样的话,如果您能够添加插件(对不起,我从未使用过Prototype),您可以查看以下内容,了解选择关闭按钮后如何触发该按钮上的单击事件。由于您有Prototype,您可以简单地使用:
$$('.dialog').first().remove();
此外,如果您使用的是prototype,您可能应该避免onClick,而使用事件观察程序:
<button id="dialogremover">Remove</button>
<script type="text/javascript">
$('dialogremover').observe('click', function(ev) {
ev.stop();
$$('.dialog').first().remove();
});
</script>
删除
$('dialogremover')。观察('click',函数(ev){
ev.stop();
$$('.dialog').first().remove();
});
这有两个好处:
- 这对眼睛容易多了李>
- 可以将JS放入外部脚本中,以清理HTML
$$('.dialog').first().remove();
此外,如果您使用的是prototype,您可能应该避免onClick,而使用事件观察程序:
<button id="dialogremover">Remove</button>
<script type="text/javascript">
$('dialogremover').observe('click', function(ev) {
ev.stop();
$$('.dialog').first().remove();
});
</script>
删除
$('dialogremover')。观察('click',函数(ev){
ev.stop();
$$('.dialog').first().remove();
});
这有两个好处:
- 这对眼睛容易多了李>
- 可以将JS放入外部脚本中,以清理HTML