使用的Greasemonkey或Tampermonkey,我怎样才能列出在thesaurus.com开放同义词(它们是链接)在新标签时控制 +点击,或新窗口时移 +点击?目前,它会在同一个标签页中打开 Ctrl + clicked和 Strl +点击的链接。
答案 0 :(得分:1)
该网站通过附加不支持修饰键的原始click
处理程序来打破标准链接行为,这是一件非常糟糕的事情。
有时您可以使用jQuery('a').off('click')
,但通用方法是:
window
上附加一个点击侦听器:使用@run-at document-start
元数据键。true
,以便在捕获阶段开始时从window
拦截事件到点击目标。因此,在 bubbles 到网站侦听点击事件的元素(可以是任何内容,从a
到window
内的内容)之前,我们还会增加拦截的机会。标准的非捕获侦听器。event.stopPropagation()
阻止随后附加的网站侦听器看到点击事件。#
中的href
跳过具有自重定向的虚拟链接和/或通过将点击目标的CSS选择器限制为内容区域来保护基于链接的合法网站功能。 / LI>
醇>
// ==UserScript==
// @name Restore links behavior
// @match *://www.thesaurus.com/*
// @run-at document-start
// ==/UserScript==
window.addEventListener('click', function(e) {
var link = e.target.closest('a');
//var link = e.target.closest('#content a'); // limit to the #content area
if (link && link.getAttribute('href') != '#') {
e.stopPropagation();
}
}, true);