Skip to content

Instantly share code, notes, and snippets.

@sters
Created April 19, 2017 02:56
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save sters/22373a5d2990c86ca98b5a380f48b4fa to your computer and use it in GitHub Desktop.
Save sters/22373a5d2990c86ca98b5a380f48b4fa to your computer and use it in GitHub Desktop.
クリップボードにコピーするブックマークレット(要babel+babili)
(() => {
let w = window, d = document, db = d.body;
let format = () => {
return "[" + d.title + "](" + d.URL + ")";
};
if (w.__z0 !== undefined) {
w.__z0.onClick({currentTarget: w.__z0d});
return;
}
let script = d.createElement('script')
let scriptSelector= '__z0';
script.src = 'https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/1.6.0/clipboard.js'
script.classList.add(scriptSelector)
if (d.querySelector('.' + scriptSelector) == null) {
db.appendChild(script);
}
let timer = null;
timer = setInterval(() => {
if (w.Clipboard === undefined) {
return
}
clearInterval(timer);
let cls = scriptSelector + 'x';
let selector = "." + cls;
db.innerHTML += "<button class='" + cls + "' style='margin-left:-9999px'></button>";
w.__z0d = d.querySelector(selector);
w.__z0 = new Clipboard(w.__z0d, {
text: function(trigger) {
return format();
}
});
w.__z0.on('success', function(e) {
alert('Copied!!\n\n' + e.text);
});
w.__z0.onClick({currentTarget: w.__z0d});
}, 16);
})();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment