jQuery 元素适用于 append() 但不适用于 after()
jQuery element works with append() but not after()
我正在修改脚本以在大写锁定打开时在密码字段上显示警告。
如果我使用 append()
方法,我正在构建的元素会很好地添加到页面中,但这不是很可扩展,因为它依赖于具有相关父元素的密码字段。我想要做的是将它添加 after()
密码字段但是当我这样做时它显示为 [object Object]
.
这是我目前的情况:
$(document).ready(function(){
$(":password").bind("keypress", function(e) {
el = jQuery('<div/>', {
id: 'caps_warning',
text: 'CAPS lock is on'
})
kc = e.keyCode ? e.keyCode : e.which;
sk = e.shiftKey ? e.shiftKey : ((kc == 16) ? true : false);
if(((kc >= 65 && kc <= 90) && !sk) || ((kc >= 97 && kc <= 122) && sk)) {
el.appendTo(e.currentTarget.parentElement);
} else {
}
});
});
我想用 e.currentTarget.after(el);
替换 el.appendTo(e.currentTarget.parentElement);
。
e.currentTarget
是一个 dom 节点,而不是 jQuery 对象。也和this
一样
尝试
$(this).after(el)
我正在修改脚本以在大写锁定打开时在密码字段上显示警告。
如果我使用 append()
方法,我正在构建的元素会很好地添加到页面中,但这不是很可扩展,因为它依赖于具有相关父元素的密码字段。我想要做的是将它添加 after()
密码字段但是当我这样做时它显示为 [object Object]
.
这是我目前的情况:
$(document).ready(function(){
$(":password").bind("keypress", function(e) {
el = jQuery('<div/>', {
id: 'caps_warning',
text: 'CAPS lock is on'
})
kc = e.keyCode ? e.keyCode : e.which;
sk = e.shiftKey ? e.shiftKey : ((kc == 16) ? true : false);
if(((kc >= 65 && kc <= 90) && !sk) || ((kc >= 97 && kc <= 122) && sk)) {
el.appendTo(e.currentTarget.parentElement);
} else {
}
});
});
我想用 e.currentTarget.after(el);
替换 el.appendTo(e.currentTarget.parentElement);
。
e.currentTarget
是一个 dom 节点,而不是 jQuery 对象。也和this
尝试
$(this).after(el)