Copy

テキストをクリップボードにコピーする機能

CSSに関しては一部CSSライブラリを採用しているので併用してください。

クリックで任意の文字列をクリップボードにコピーする機能。

  • DEMO
テスト

使い方

トリガーとなる要素に+-.copyMod-+のclass追加で内包する文字列をコピーする。
コピー時にウィンドウ下部にスナックバーを表示。

  • HTML
  • CSS
  • Script
.copyMod {cursor: pointer;}
  #copyMod-alert {
    width: 100%;
    height: 50px;
    padding: 0 24px;
    line-height: 50px;
    background: rgba(0,0,0,0.8);
    color: #fff;
    box-sizing: border-box;
    display: flex;
    position: fixed;
    bottom: 0;
    left: 0;
    display: none;
  }
  .copyMod-alert-txt {display: flex;}
  .copyMod-alert-tar {
    max-width: calc(100% - 20em - 8px);
    margin-right: 8px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    opacity: 0.8;
  }
$bd.on('click','.copyMod',function(){
    if($('#copyMod-alert')[0]){$('#copyMod-alert').remove();}
  
    let $copyarea = $('');
    let copyTxt = $(this).data('copy');
    if(copyTxt == undefined){copyTxt = $(this).text();}
    let $copyalert = $('

[ '+copyTxt+' ]クリップボードにコピーしました

'); $copyarea.text(copyTxt); $bd.append($copyarea).append($copyalert); $copyarea.select(); document.execCommand('copy'); $copyarea.remove(); $copyalert.fadeIn(); setTimeout(function(){ $copyalert.fadeOut().queue(function(){ this.remove(); }); },1000); });

設定した文字列をコピー

[data-copy]属性を追加すると内包する文字列ではなく、属性に入れた文字列をコピーします。

  • HTML
  • DEMO
テスト