【发布时间】:2014-03-10 18:49:03
【问题描述】:
这是事件发生的情况:
$('div#pages').append($('<div class="page" id="test">...</div>'));
然后,在另一个事件中它失败了:
var page = $('div.page#test'); // returns empty array
我已经调试过了,追加后的html出现在文档结构中,但是没有被选中。在浏览器控制台中执行相同操作非常有效。
可能是什么问题?
【问题讨论】:
-
您的第一个代码 sn-p 缺少括号。那是错字吗?另外,您如何验证事件的顺序?
-
$('#test')就足够了,因为 id 应该是唯一的。没有理由在选择器中链接一个类和一个 id。 -
@StephenThomas 写帖子时打错字了(已编辑)。好吧,不一定是事件,在添加div之后,我在浏览器中转到开发工具,确保div在那里,转到控制台,尝试用jquery选择它 - 没有成功。
-
@watson 感谢提醒,但也可以有其他 div,例如
<div class="thread" id="test">... -
@Acute,如果你有多个元素具有相同的
id,那是无效的HTML。
标签: javascript jquery dom