gpt4 book ai didi

javascript - Selenium IDE - 未触发 JQuery onclick 处理程序

转载 作者:搜寻专家 更新时间:2023-11-01 04:27:33 24 4
gpt4 key购买 nike

我正在尝试使用 FF Selenium IDE 插件测试页面。

有一个像下面这样的菜单结构..

<ul class="parent">
<li class="child"><span><a href="something.html">link text</a></span></li>
<li class="child"><span><a href="somethingelse.html">other text</a></span></li>
<ul>

li 元素绑定(bind)了悬停事件。这些悬停事件在实际的链接标签上注册了一个点击事件。 (为了简化,我删除了一些 JavaScript)

  var menu = $('ul.parent');

$("> li.child", menu).hover(function () {

$(this).find('> a').click(function () {
$(this).parent().addClass('active-trail');
return false;
});
}, function() {});

如果我使用 Selenium 单击这些链接之一,那么我希望调用处理程序。事实并非如此,只是简单地执行了点击(随后是链接,而不是返回 false)。

我试过(在阅读其他答案后)mouseUp 和 mouseDown。我也尝试过使用 fireEvent 首先将鼠标悬停在 li 上(以激活悬停事件),然后使用另一个 fireEvent 来单击 anchor ..但这也没有用。

因此,我们将不胜感激任何帮助。只是使用 Selenium 触发 jquery 提供的点击处理程序的基本演示可能就足以让我明白!

谢谢,帕特里克。

最佳答案

fireEvent() 你是对的,你确定你用对了吗?

如果你想触发 onClick 处理程序,你将执行 fireEvent(locator, "click") 而不是 fireEvent(locator, "onClick").

如果您使用 selenium IDE 生成脚本,那么您可能做对了。

Selenium 在这方面有点狡猾,我遇到过很多类似的问题。

关于javascript - Selenium IDE - 未触发 JQuery onclick 处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5658892/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com