我正在尝试编写一个在启动时登录到网站的AppleScript应用程序。到目前为止,我可以成功打开Chrome,将网页加载到活动标签页,选择并输入密码,但我无法点击提交按钮。
以下是页面上的元素:
<button type="submit" class="btn btn--ac" alt="Login"
title="Login" tabindex="6"><i aria-hidden="true"
class="lush lush-locked"></i> Login</button>
我在javascript中的技能水平几乎没有,但我找不到成功选择此项并单击它的方法。我已经尝试使用TagName和ClassName,但它不起作用,也许我的语法不正确。有没有ID类型的方法可以做到这一点?
我试过了:
execute front window's active tab javascript
"document.getElementByClassName('btn, btn--ac').click()"
execute front window's active tab javascript
"document.getElementByTagName('button').click()"
我应该注意这个脚本在Google Chrome中运行。
感谢您提前提供任何帮助。
答案 0 :(得分:2)
首先,你使用了错误的功能。它应该是
document.getElementsByClassName
尝试使用:(假设“提交”按钮是类btn
的唯一按钮)
document.getElementsByClassName('btn')[0].click();
以下是Mozilla中函数的基本定义:
document.getElementsByClassName():
返回包含所有子元素的所有子元素的类数组对象 给定的类名。
因此,您将获得一个元素列表。因此,您选择其中的第一个元素(使用0作为索引),然后单击它。
答案 1 :(得分:0)
普通js中用于通过类选择元素的正确语法是:
document.getElementsByClassName('btn--ac');
通过这个你将得到一个包含所有元素'btw - ac'的数组。在你的情况下试试这个:
document.getElementsByClassName('btn--ac')[0].click();