Комментарий #10114764

delez
А можно сделать код, который будет открывать ссылки на другие ресурсы со страницы тайтла в новой вкладке?
Ответы
grin3671
grin3671#
@delez,
вариант 1
// ==UserScript==
// @name         setLinkBlank
// @namespace    https://shikimori.one/
// @version      1.0
// @description  Открывает ссылки «на других сайтах» в новой вкладке
// @match        https://shikimori.one/*
// ==/UserScript==

(function() {
  "use strict";

  function setLinkBlank() {
    document.querySelectorAll(".b-external_link > a").forEach(link => {
      link.target = "_blank";
    });
  }

  setLinkBlank();
  document.addEventListener("page:load", setLinkBlank);
  document.addEventListener("turbolinks:load", setLinkBlank);
})();
вариант 2
// ==UserScript==
// @name         shikiExternalLinkHandler
// @namespace    https://shikimori.one/
// @version      1.0
// @description  Открывает ссылки «на других сайтах» в новой вкладке
// @match        https://shikimori.one/*
// ==/UserScript==

(function() {
  "use strict";

  function externalLinkHandler (event) {
    event.preventDefault();
    window.open(event.target.href, "_blank");
  }

  function shikiExternalLinkHandler () {
    document.querySelectorAll(".b-external_link > a").forEach(link => {
      link.removeEventListener("click", externalLinkHandler);
      link.addEventListener("click", externalLinkHandler);
    });
  }

  shikiExternalLinkHandler();
  document.addEventListener("page:load", shikiExternalLinkHandler);
  document.addEventListener("turbolinks:load", shikiExternalLinkHandler);
})();
Dedonych
Dedonych#
@delez, Есть готовые скрипты. Например, здесь , 2-ой пункт
назад
Твой комментарий
Вернуться к редактированию
Предпросмотр
Скрыть