得到了这个例子:
<html>
<head>
<script type="text/javascript">
function init(){
var linkPage = document.getElementById('linkid').href;
window.location.href = linkPage;
}
onload=init;
</script>
</head>
<body>
<a href="someplace.html" id="linkid">GO HERE</a>
</body>
</html>
此脚本点击“GO HERE”链接。 (效果很好)
但在我的例子中,我没有链接中的类或ID。
<a href="someplace_with_session.php&c=ToMNi1ffNs4qf55cSmaisSvv3h8NqUliyO&o=16cb29acefffyccc83bbd8e&r=338a8d7492839096df1dd">LINK NAME</a>
唯一不变的是链接的名称(“LINK NAME”)
是否可以搜索“LINK NAME”,然后像上面的工作脚本一样点击它?
或能做我需要的事情:D
答案 0 :(得分:5)
JS没有办法按文本内容搜索节点(我知道)。
Array.prototype.forEach.call(document.getElementsByTagName('a'), function (elem) {
if (elem.innerHTML.indexOf('LINK NAME') > -1) {
window.location = elem.href;
}
});
答案 1 :(得分:2)
迭代文档中的链接并检查文本:
for(var i = 0, len = document.links.length; i < len; i += 1) {
if(document.links[i].textContent === "LINK TEXT") {
document.links[i].click();
}
}
答案 2 :(得分:2)
我只使用以下位,它使用jquery选择。
var link = $("a:contains('LINK TEXT')"); //get the a
var click = document.createEvent("Event"); //create event
click.initEvent("click", true, true);
link.dispatchEvent(click); // make it happen