在Watir中加载js文件

时间:2013-03-21 22:38:19

标签: javascript jquery ruby automation watir

我希望能够使用Watir动态加载像jquery这样的.js库,以实现一些高级浏览器自动化。这就是我试过的:

$browser.execute_script( %{var bootscript = document.createElement("script");
      bootscript.setAttribute("type", "text/javascript");
      bootscript.setAttribute("src", "//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js");
      document.getElementsByTagName("head")[0].appendChild(bootscript);
     alert('I loaded jquery!');});
在错误修正后,

更新不再崩溃。使用jquery函数时仍然会出错。

1 个答案:

答案 0 :(得分:1)

发生异常是因为执行javascript时出错。如果您检查该页面,您将看到一个javascript错误,如:

Message: 'script' is undefined
Line: 1
Char: 1
Code: 0

如果逐行添加脚本,您将看到错误发生在该行:

document.getElementsByTagName("head")[0].appendChild(script);

问题在于变量中存在拼写错误。您使用的是script,而不是您定义的bootscript。执行以下操作将不再抛出异常:

document.getElementsByTagName("head")[0].appendChild(bootscript);