基本上我们有使用span
的链接$('#desc').click() {
//do somehting
}
<span id="desc"> This is Link </span>
这个<span>
看起来像风格的链接。
现在,在selenium我有点击链接的代码。
但是,由于某些javascript会在页面加载时加载,因此需要时间才能使这些链接可点击。
所以点击失败,但是selenium没有报告。 (我的意思是它不会只点击元素。)
如何在点击selenium中的链接之前确保onclick事件已绑定?
答案 0 :(得分:1)
问题似乎是链接看起来可点击之前可以点击(或者,至少在点击它之前做了一些有用的事情)。因此,我建议为所有想要看起来像链接的范围提供一个类:
<span class="link_span">...</span>
并且具有使它们看起来像链接的风格:
link_like {
text-decoration: underline;
/* whatever else */
}
然后在加载窗口后将类类应用于link_span
,这在$(document).ready()
$(window).load(
function() {
$('.link_span').each(
function(){
$(this).addClass('link_like');
}
);
}
);
重点是span
s
显然,最简单的解决方案是使用真正的超链接,但我认为你已经将这种可能性打折了。
答案 1 :(得分:0)
在你的问题中,$('desc').click() { }
什么都不做,你必须做类似
<span id="myid" class="myclass"> This is Link </span>
$('span#myid').click(function() { ... });
//or
$('#myid').click(function() { .... });
// or
$('.myclass').click(function() { ..... });
请参阅 .selectors()
答案 2 :(得分:0)
waitFor...
家庭可能适合您的需要。
例如,如果在加载java脚本后确定元素存在,
使用:waitForElementPresent(locator)