【发布时间】:2011-05-31 16:09:31
【问题描述】:
如何检查元素是否存在,如果存在,我希望 insertAfter 无效。如果元素不存在,那么我希望 insertAfter 有效但只有一次。我的目标是发送如果元素不存在且不发送任何内容,则仅插入一次
【问题讨论】:
-
在哪个元素之后插入什么元素以响应什么事件?您尝试了什么,出了什么问题?
标签: jquery
如何检查元素是否存在,如果存在,我希望 insertAfter 无效。如果元素不存在,那么我希望 insertAfter 有效但只有一次。我的目标是发送如果元素不存在且不发送任何内容,则仅插入一次
【问题讨论】:
标签: jquery
只需检查长度即可。假设你有一个选择器#sel,并且你想在它后面插入一些东西。
var foo = 'something';
if ($('#sel').length) {
//do something if elem is present
} else {
$('#sel').insertAfter(foo);
}
【讨论】:
您可以通过检查任何 jQuery 对象的length 属性来检查元素是否存在。
【讨论】:
根据您的需要修改后,将以下内容放在您选择的事件处理程序中:
if (!$('elementID').length) {
$('<div id="elementID" />').insertAfter('elementSelector');
}
例如:
$('elementSelector').once().click(
function(){
if (!$('elementID').length) {
$('<div id="elementID" />').insertAfter('elementSelector');
}
});
参考资料:
【讨论】: