except for the turn page link whose inner text is 'next', 'previous' and other page number)
当前为
// ==UserScript==
// @name open all links in the new tab except for the turn page link
// @description except for the turn page link whose inner text is 'next', 'previous' and other page number)
// @include http://*
// @include https://*
// @author yechenyin
// @version 0.5
// @namespace https://greasyfork.org/users/3586-yechenyin
// @grant GM_openInTab
// ==/UserScript==
var exception = ['https://m.leiphone.com/page/'];
function getAncestorLink(element) {
while (element && element.nodeName != "A") {
element = element.parentNode;
}
if (element.nodeName === "A")
return element;
}
String.prototype.matched = function(strings) {
for (var i = 0; i < strings.length; i++) {
if (typeof strings[i] == 'string' && this.indexOf(strings[i]) === 0)
return true;
else if (strings[i] instanceof RegExp && this.test(strings[i]))
return true;
}
return false;
};
document.addEventListener('click', function(e) {
var link = getAncestorLink(e.target);
console.log(link.innerText);
if (link && link.href && !/^(\d+|Next|Prev|>|<|下一页|上一页|下一頁|上一頁|回首頁|次へ|前へ)$/.test(link.innerText) && !link.href.matched(exception))
link.target = '_blank';
});