为什么Selenium找不到动态添加的DOM元素?

Mat*_*man 6 javascript jquery selenium capybara

我用jQuery添加了一个DOM元素(一个链接).我可以在Firebug中看到该元素,但由于某种原因,Selenium无法找到它.这里发生了什么?

注意:不涉及AJAX,因此几乎可以立即添加DOM元素.

==编辑==

这是一些代码(使用jQuery),它将一个链接附加到文档的末尾:

$element = $("<a id="foo" href="#"></a>");
$element.appendTo($("body"));
Run Code Online (Sandbox Code Playgroud)

我正在使用Capybara(使用Selenium)查找链接并单击它,如下所示:

find("#foo").click
Run Code Online (Sandbox Code Playgroud)

在我开始使用jQuery向DOM添加元素之前,我对Capybara或Selenium没有任何问题.

Jig*_*hah 6

尝试在测试代码中使用waitForElementPresent.