【发布时间】:2017-08-21 08:13:42
【问题描述】:
我有一个按钮或提交表单将在未知时间出现的页面。我不知道按钮/表单的 id、类或 xpath,但我知道按钮的文本是什么。它会说:“Click here”。该页面将只有该按钮和一些文本。
如何创建一个脚本,以便在按钮出现时尽快单击它?
这只是一个例子,我知道getElementByText/getElementByValue 不存在:
<html>
<body>
<div>At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium voluptatum deleniti atque corrupti quos dolores et quas molestias excepturi sint</div>
<button>Click me<button>
<form>
<input type="submit" value="Click me">
</form>
<div> occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis est et expedita</div>
</body>
</html>
<script>
intervalFunction(){
setInterval(clickFunction, 500);
}
clickFunction(){
if(docment.getElementByText("Click me")){
document.getElementBy("Click me").click();
}
else if{docment.getElementByText("Click me")){
document.getElementvalue("Click me").click();}
}
else
intervalFunction();
}
</script>
【问题讨论】:
-
您肯定能够计算出元素的 DOM 路径吗?
-
您显示的代码不是有效的 JS -
document.querySelector("[value='Click me']")会在纯 JS 中为您提供按钮,在 jQuery 中为$("[value='Click me']")) -
如果页面是您的,您可以随时在文档上添加
change事件,并在每次更改时查看所有按钮$( ":button" )并查看文本是否与Click here匹配。但是,如果您不拥有该页面,那么这听起来像是作弊/黑客行为,您不应该这样做。希望这会有所帮助! -
只是好奇你为什么会喜欢这种行为。对于答案,我不是一个完全的专家,但如果至少你知道它是一个按钮,你可以使用
getElementByTagName()。如果它是一个提交按钮并且它的显示是否隐藏,您也可以过滤该帖子 -
这不是我的页面。我知道在特定日期的某个时间会出现一个按钮,我想尽快单击它。我只知道按钮文本 = 点击我。如何在不知道 id、xpath 或类的情况下创建一个脚本来单击按钮或输入?
标签: javascript jquery html