【发布时间】:2013-12-16 05:06:27
【问题描述】:
我正在尝试编写此函数来单击包含特定文本的链接,唯一的问题是该链接不会指向新页面。我只需要触发一次点击,就可以执行下一个运行良好的函数。这是我的代码--
function Clickit() {
var TargetLink = $("a.box:contains('9')")
if (TargetLink.length)
window.location.href = TargetLink[0].href
}
这会导致无限重新加载,所以我尝试像这样修改它--
function Clickit() {
var TargetLink = $("a.box:contains('9')")
if (TargetLink.length)
click().href = TargetLink[0].href
}
但这给出了一个错误,点击未定义。我还在学习 JS,所以我不太确定我做错了什么。有什么想法吗?
还有没有更好的方法来编写代码而不使用“$”或“JS”,这样我就不必在我的扩展中嵌入 jquery 库?
【问题讨论】:
-
您是否登录了 TargetLink 并试图找出它的
undefined或其他什么?在if条件前添加console.log(TargetLink.length)和console.log(TargetLink[0].href)并检查。 -
console.log(TargetLink.length) -- 在控制台中显示“1”
-
那么
TargetLink[0].href有问题。尝试替换为window.location.href = 'http://www.google.com';。这应该带你到谷歌。console.log(TargetLink[0].href)给你什么? -
console.log(TargetLink[0].href) 在控制台上显示一个空白区域。我不希望链接将我带到一个新页面,我只是希望它点击带有指定文本的 标签
标签: javascript jquery google-chrome-extension click contains