我正在编写一个Rails 3应用程序,其中一段代码试图使用Capybara Poltergeist浏览网站。
该网站的正文有一个框架:
<frame src = "Nsis/html/Splash.jsp" name="ApplicationFrame" scrolling="yes" noresize>
在这个框架内我有一个元素:
<span class=\"SpanApplicationLink\" title=\"XML\" tabindex=\"10\" onmouseout=\"javascript: changeColorFont(this,2);\" onmouseover=\"javascript: changeColorFont(this,1);\" onclick=\"javascript:goLink('C','gesxml');\" style=\"color: rgb(0, 153, 204); \">XML</span>
我想点击。
单击时,元素应使用新内容更新框架,但在我的应用程序中,不执行相关的javascript函数,框架继续包含相同的主体。
我尝试用3种方式调用函数:
page.within_frame("ApplicationFrame") do page.find(:xpath,"//span[text()='XML']").click end
page.within_frame("ApplicationFrame") do page.execute_script("javascript:goLink('C','gesxml');") end
page.within_frame("ApplicationFrame") do page.execute_script("parent.ApplicationFrame.document.body.querySelector('span[title=\"XML\"]').click();") end
如何触发此事件?我坚持这个问题,找不到问题所在:/
我的系统配置是: