отобразить сообщение об успешном завершении копирования URL в буфер обмена - PullRequest
2 голосов
/ 08 апреля 2020

Я пытаюсь отобразить сообщение (то есть "скопировано!" После копирования URL-адреса в буфер обмена. Не могли бы вы помочь, как поступить?

Я изучил это из stackoverflow и codepen: 1 , 2 , 3 и более.

function copy(){var e=document.getElementById("box");e.value=window.location.href,e.focus(),e.select(),document.getElementById("ctooltip").style.display="inline",document.execCommand("copy"),setTimeout(function(){document.getElementById("ctooltip").style.display="none"},2000)}
.copybutton{background-color:transparent;border:0;outline:0;cursor:pointer;opacity:1;position:absolute}.btooltip{display:flex;align-items:center;margin-top:6px;min-height:30px}#ctooltip{display:none;font-size:20px;margin-left:0;padding:3px 8px;background:linear-gradient(45deg,#2e23ac 0,#ee71f9 100%);border-radius:24px;color:#fff;z-index:1;position:relative}.visuallyhidden{position:absolute;clip:rect(1px,1px,1px,1px)}
<div class="btooltip"><button title="copy share link" type="submit" value="copy" onclick="copy();" class=copybutton><svg width="22" height="22" viewBox="0 0 20 20" version="1.1"><path stroke=white stroke-width=".4" fill="#000" d="M20,18.2V19H0v-1.5h16.4h2.1V5.2H20V18.2z M1.5,11.3V5.2H0v12.3h1.5V11.3z M9.2,12.8V0.5h1.5v12.3H9.2z M4.6,5.2h1.5v1.5H4.6V5.2z M6.2,3.6h1.5v1.5H6.2V3.6z M13.8,5.2h1.5v1.5h-1.5V5.2z M12.3,3.6h1.5v1.5h-1.5V3.6z M10.8,2.1h1.5v1.5h-1.5V2.1zM7.7,2.1h1.5v1.5H7.7V2.1z"></path></svg></button><span id="ctooltip">✓</span></div><textarea class=visuallyhidden id="box"></textarea>

Ответы [ 2 ]

2 голосов
/ 08 апреля 2020

Я создаю всплывающую подсказку для шоу "Скопировано!" сообщение:

function copy(){
    var Url = document.getElementById("box");
    Url.value = window.location.href;
    Url.focus();
    Url.select();
    document.getElementById("custom-tooltip").style.display = "inline";
    document.execCommand("copy");
    setTimeout( function() {
        document.getElementById("custom-tooltip").style.display = "none";
    }, 1000);

};
.visuallyhidden{position:absolute;clip:rect(1px,1px,1px,1px)}
.copybutton{background-color:#fff;border:0;outline:0;cursor:pointer;opacity:1;position:absolute;width:40px;height:40px;z-index:9;border-radius:24px}
.button-tooltip-container {
    display: flex;
    align-items: center;
    margin-top: 16px;
    min-height: 30px;

}
#custom-tooltip {
    display: none;
    margin-left: 40px;
    padding: 5px 12px;
    background-color: #000000df;
    border-radius: 4px;
    color: #fff;
}
<div class="button-tooltip-container">
    <button title="copy share link" type="submit" value="copy" onclick="copy();" class=copybutton><svg width="22" height="22" viewBox="0 0 20 20" version="1.1"><path fill="#000" d="M20,18.2V19H0v-1.5h16.4h2.1V5.2H20V18.2z M1.5,11.3V5.2H0v12.3h1.5V11.3z M9.2,12.8V0.5h1.5v12.3H9.2z M4.6,5.2h1.5v1.5H4.6V5.2z M6.2,3.6h1.5v1.5H6.2V3.6z M13.8,5.2h1.5v1.5h-1.5V5.2z M12.3,3.6h1.5v1.5h-1.5V3.6z M10.8,2.1h1.5v1.5h-1.5V2.1zM7.7,2.1h1.5v1.5H7.7V2.1z"></path></svg></button>
    <span id="custom-tooltip">copied!</sapn>
</div>

<textarea class=visuallyhidden id="box"></textarea>

Надеюсь быть полезным!

0 голосов
/ 08 апреля 2020

Добавьте alert к вашей функции копирования.

function copy(){
  var Url = document.getElementById("box");
  Url.value = window.location.href;
  Url.focus();
  Url.select();  
  document.execCommand("copy");
  alert("Copied!");
}

function copy() {
  var Url = document.getElementById("box");
  Url.value = window.location.href;
  Url.focus();
  Url.select();
  document.execCommand("copy");
  alert("Copied!");
}
.visuallyhidden {
  position: absolute;
  clip: rect(1px, 1px, 1px, 1px)
}

.copybutton {
  background-color: #fff;
  border: 0;
  outline: 0;
  cursor: pointer;
  opacity: 1;
  position: absolute;
  right: 50px;
  width: 40px;
  height: 40px;
  z-index: 9;
  border-radius: 24px
}
<button title="copy share link" type="submit" value="copy" onclick="copy();" class=copybutton><svg width="22" height="22" viewBox="0 0 20 20" version="1.1"><path fill="#000" d="M20,18.2V19H0v-1.5h16.4h2.1V5.2H20V18.2z M1.5,11.3V5.2H0v12.3h1.5V11.3z M9.2,12.8V0.5h1.5v12.3H9.2z M4.6,5.2h1.5v1.5H4.6V5.2z M6.2,3.6h1.5v1.5H6.2V3.6z M13.8,5.2h1.5v1.5h-1.5V5.2z M12.3,3.6h1.5v1.5h-1.5V3.6z M10.8,2.1h1.5v1.5h-1.5V2.1zM7.7,2.1h1.5v1.5H7.7V2.1z"></path></svg></button>

<textarea class=visuallyhidden id="box"></textarea>
...