自动化一个JavaScript按钮点击

问题描述:

所以我有这样的代码按钮:自动化一个JavaScript按钮点击

<div style="text-indent: 0pt; visibility: inherit;" id="button5061"> 
    <a title="Continue" href="javascript:if(%20button5061.hasOnUp%20)%20button5061.onUp()" name="button5061anc"> 
     <img width="82" height="25" border="0" style="cursor: pointer;" alt="Continue" src="images/continueoff.gif" name="button5061Img"> 
    </a> 
</div> 

,我需要使用javascript点击它。现在我使用的是Firefox的扩展程序Chickenfoot,它允许我用JavaScript解释器编写一些自定义命令来编写脚本。

http://groups.csail.mit.edu/uid/chickenfoot/api.html

我曾尝试使用XPath选择它(// DIV/A [@标题= '继续']/..),它发现它,但是当我点击()它没有任何反应。 这里有一些我已经试过的东西:

click(find(new XPath("//img[@alt='Continue']/.."))) 
click(find(new XPath("//img[@alt='Continue']/../.."))) 
click("continue") 
click("Continue") 
click("images/continueoff.gif") 
click("continueoff.gif") 
click(find("Continue")) 
click(find("Continue").element) 
click(find("images/continueoff.gif")) 

我知道这是一个相当具体的quesiton但什么尝试将不胜感激任何想法。

如果你想模仿就可以了用户点击:

您可以模拟这样的点击:document.getElementById('theSubmitButton').click();

下面是雅的例子:http://jsfiddle.net/gasWZ/1/

如果这不是你'试图去做,你能解释一下吗?

+0

不幸的是在我的特定情况下该按钮的ID变化我想自动化网页自动生成。如果有方法通过它的标题或图像的alt标记来选择按钮,这可能会有效,但我无法找到任何getElementByAttribute或类似的操作。 – MadMod 2011-04-11 19:17:55

+0

嗯,我不知道你会怎么做。有一些属性,该按钮将永远有? – penguinrob 2011-04-11 19:21:16

+0

'

' 我替换了下划线更改的部分。我试着用你的jsfiddle文档中的document.getElementById('button5061')。getElementsByTagName('a')[0] .click()来代替按钮来选择它,但没有任何反应。 – MadMod 2011-04-11 19:27:30

将锚点对象传递给函数并计算name属性不会有效吗?

  1. 集href属性#
  2. 通话功能,并通过与obj

<div style="text-indent: 0pt; visibility: inherit;" id="button____"> <a title="Continue" href="#" name="button____anc"> <img width="82" height="25" border="0" style="cursor: pointer;" alt="Continue" src="images/continueoff.gif" name="button____Img"> </a> </div> 

HTML:

<div> 
    <a href="#" onclick="alert('ok')"> 
     <img src=""> 
    </a> 
</div> 

的javascript:

var xPathRes = document.evaluate ('//div[1]/a[1]', document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null); 
xPathRes.singleNodeValue.click(); 

的jsfiddle:

https://jsfiddle.net/7fm89aqd/