← Wszystkie przykłady

JavaScript Produktywność stackoverflow.com

Stack Overflow: przycisk kopiowania kodu

Dodaje do każdego bloku kodu mały przycisk „Copy”, który jednym kliknięciem kopiuje całą zawartość do schowka.

Kod do skopiowania

/* Add a "Copy" button to every code block */
(function () {
  function addButtons() {
    document.querySelectorAll('.s-prose pre, .js-post-body pre').forEach(function (pre) {
      if (pre.dataset.sofCopy) return;
      pre.dataset.sofCopy = '1';
      pre.style.position = 'relative';
      var btn = document.createElement('button');
      btn.textContent = 'Copy';
      btn.style.cssText = 'position:absolute;top:6px;right:6px;font-size:11px;padding:2px 8px;cursor:pointer;border:1px solid #aaa;border-radius:4px;background:#fff;z-index:5;';
      btn.addEventListener('click', function () {
        var code = pre.querySelector('code') || pre;
        navigator.clipboard.writeText(code.innerText).then(function () {
          btn.textContent = 'Copied!';
          setTimeout(function () { btn.textContent = 'Copy'; }, 1500);
        });
      });
      pre.appendChild(btn);
    });
  }
  addButtons();
  new MutationObserver(addButtons).observe(document.body, { childList: true, subtree: true });
})();

Jak użyć tego przykładu

  1. Skopiuj kod przyciskiem powyżej.
  2. Zainstaluj JustZix (2 minuty) i otwórz wtyczkę na docelowej stronie.
  3. Dodaj nową regułę dopasowaną do tej strony.
  4. Wklej kod w panelu JavaScript reguły i zapisz — uruchomi się przy każdym wejściu na stronę.

Oceń ten przykład

Brak ocen — oceń jako pierwszy.

Czy ten przykład działa?

Snippety są bezużyteczne, jeśli nie masz gdzie ich wkleić.

JustZix instalujesz w 2 minuty i odpalasz swój kod na każdej pasującej stronie. Bez konta, bez opłat.

Pobierz za darmo Zobacz zastosowania