所以我有一个似乎很简单的问题。我正在尝试使用以下代码自动打开页面上的特定链接:
// ==UserScript==
// @name AutoClicker
// @include https://example.com/*
// @require http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js
// @grant GM_addStyle
// ==/UserScript==
var TargetLink = $("a:contains('cars')")
if (TargetLink.length)
window.location.href = TargetLink[0].href
//--- but open it in a new tab
出色地工作。
唯一的问题是我不知道在新标签页中打开所选链接的方法。我尝试了以下代码的迭代,但无济于事:
var TargetLink = $("a:contains('cars,' '_blank')")
我知道我需要使用_blank
,但是我不确定应该在哪里或是否应该用jQuery写。我也尝试过将_blank放置在contains之外,但是我不确定如何在jQuery中编写代码。
我只希望所选链接在点击后在新标签中打开。有什么建议或想法吗?
答案 0 :(得分:6)
问题不清楚,问了两个不同的问题。 是否要在没有用户交互的情况下打开标签页?
如果是, Tampermonkey具有此功能:GM_openInTab()
Doc。
所以:
<php?
echo ucfirst
?>
如果不是,使用jQuery's attr()
Doc也很容易。
所以:
// ==UserScript==
// @name AutoClicker
// @include https://example.com/*
// @require https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js
// @grant GM_openInTab
// ==/UserScript==
var TargetLink = $("a:contains('cars')");
if (TargetLink.length)
GM_openInTab (TargetLink[0].href);
对于javascript驱动的页面(也适用于静态页面):
// ==UserScript==
// @name NOT an AutoClicker, per question text
// @include https://example.com/*
// @require https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js
// @grant GM_addStyle
// ==/UserScript==
var TargetLink = $("a:contains('cars')");
if (TargetLink.length)
TargetLink.attr ('target', '_blank');