使用casperjs的评估函数和jQuery单击元素 [英] Clicking an element using casperjs's evaluate function and jQuery
本文介绍了使用casperjs的评估函数和jQuery单击元素的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试使用jQuery和casperjs单击从DOM中检索到的元素.
I am trying to use jQuery and casperjs to click an element retrieved from the DOM.
casper.options.clientScripts = ["jquery-1.11.1.min.js"];
...
...
casper.then(function()
{
this.wait(2000,function()
{
this.evaluate(function()
{
var element = $('h4:contains("test")').prev().find('.delete');
$(element).css("background-color", "red");
$(element)[0].click();
});
});
)};
我用过
$(element).css("background-color", "red");
确切地了解jquery正在选择的元素(我已经使用capture()来查看网页上正在发生的事情),并且它已经选择了正确的元素. 我已经在Firefox的firebug开发工具上尝试过我的代码,并且可以正常工作,但是我无法完全使用click功能.
to see exactly what element jquery is selecting, (I have used capture() to see what is happening on the webpage) and it has selected the correct one. I have tried my code on Firefox's firebug dev tool and it works fine, but I cannot get the click function to work at all.
推荐答案
您可以尝试多种方法.
-
使用jQuery
click
element.click();
使用onlick
element[0].onclick();
使用onlick
通话
element[0].onclick.call(element[0]);
使用带有casper.click
var x = require('casper').selectXPath;
this.evaluate(function(){
var $element = $('h4:contains("test")').prev().find('.delete');
$element.css("background-color", "red");
});
this.click(x("//h4[contains(.,'test')/preceeding-sibling::*[1]//*[contains(@class,'delete')]]"));
这篇关于使用casperjs的评估函数和jQuery单击元素的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文