您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Redirect directly to target page avoiding Yandex Turbo
当前为
// ==UserScript== // @name Avoid Yandex Turbo // @name:ru Обход Яндекс Турбо // @description Redirect directly to target page avoiding Yandex Turbo // @description:ru Переадресация на целевую страницу в обход Яндекс Турбо // @author Autapomorph // @version 2.0.0 // @run-at document_start // @match *://yandex.ru/* // @match *://*.turbopages.org/* // @supportURL https://github.com/Autapomorph/userscripts/issues // @license MIT // @namespace https://greasyfork.org/users/689919 // ==/UserScript== (function () { function redirectWithTurboOverlay() { var titleHostActive = $('.turbo-overlay__title-host_active'); if (!titleHostActive || !titleHostActive.length) { return; } var titleHostActiveText = titleHostActive[0].textContent; if (!titleHostActiveText.length) { return; } var hostLinks = $('a[data-sc-host]'); for (var i = 0; i < hostLinks.length; i += 1) { var hostLink = $(hostLinks[i]); var dataCounter; try { dataCounter = JSON.parse(hostLink.attr('data-counter')); } catch (error) { return; } if (dataCounter.find(e => e.indexOf(titleHostActiveText) > -1)) { var redirect; if (dataCounter[0] === 'b') { redirect = dataCounter[1]; } else if (dataCounter[0] === 'w') { redirect = dataCounter[3]; } else { return; } top.location.replace(redirect); } } $('a[data-sc-host]').each(function () { var dataCounterAttr = $(this).attr('data-counter'); if (!dataCounterAttr) return; var dataCounter = JSON.parse(dataCounterAttr); if (dataCounter.find(e => e.indexOf(titleHostActiveText) > -1)) { var redirect; if (dataCounter[0] === 'b') { redirect = dataCounter[1]; } else if (dataCounter[0] === 'w') { redirect = dataCounter[3]; } top.location.replace(redirect); } }); } function redirectWithURL() { var urlPathname = top.location.pathname; var turboIndex = urlPathname.indexOf('/turbo/'); var delimeterIndex = urlPathname.search(/\/(s|h)/); var delimeterLength = 2; if (delimeterIndex < 0) { return; } var host = turboIndex === -1 ? urlPathname.substring(1, delimeterIndex) : urlPathname.substring(turboIndex + '/turbo/'.length, delimeterIndex); var pathName = urlPathname.substring(delimeterIndex + delimeterLength); top.location.replace('//' + host + pathName); } var urlPathname = top.location.pathname; if (/\.*\/(s|h)\/.*/.test(urlPathname)) { redirectWithTurboOverlay(); redirectWithURL(); } })();