我刚刚试过这个:$browser.execute_script("alert("aaa")")
然后我得到以下错误:
h:/Ruby193/lib/ruby/gems/1.9.1/gems/watir-classic-3.2.0/lib/watir-classic/page-container.rb:46:in `method_missing': (in OLE method `execScript': ) (WIN32OLERuntimeError)
OLE error code:80020101 in <Unknown>
Could not complete the operation due to error 80020101.HRESULT error code:0x80020009
Exception occurred.
from h:/Ruby193/lib/ruby/gems/1.9.1/gems/watir-classic-3.2.0/lib/watir-classic/page-container.rb:46:in `rescue in execute_script'
from h:/Ruby193/lib/ruby/gems/1.9.1/gems/watir-classic-3.2.0/lib/watir-classic/page-container.rb:39:in `execute_script'
我是否缺少安装某些内容?
异常意味着运行脚本时发生 javascript 错误。
虽然修复脚本会更好,但如果你真的想忽略异常,你可以把它包装在一个开始救援中:
begin
$browser.execute_script("asdfasd")
rescue WIN32OLERuntimeError
#Ignore javascript error that occurred
end
当异常发生时,救援将捕获它并允许程序继续。
尝试使用单引号使其正常工作:
$browser.execute_script("alert('aaa')")