1
我有一個Firefox網絡擴展,它應該生成將鏈接複製到剪貼板的按鈕。在該插件我的內容腳本,我有:Firefox webextension不復制到剪貼板
button.onclick = function() {
var link = window.location.href.replace(/#[0-9a-zA-Z_]+$/, '') + '#' + id;
var txtToCopy = document.createElement('input');
txtToCopy.value = link;
txtToCopy.select();
console.log(txtToCopy.value);
var res = document.execCommand('copy');
console.log(res);
}
正如你所看到的,我把它記錄從execCommand
回來我試圖複製的價值,以及作爲結果。兩者都是我所期望的。
"https://thing.example.com#12345" true
但是,它並沒有出現真正的文本複製到剪貼板。根據MDN的說法,我不需要任何額外的權限,因爲它發生在一個事件中,並且來自execCommand
的響應使我可以根據需要設置一切。
我在啓用了e10s的Ubuntu 16.04,Firefox 51.0.1上運行。也許e10s是我的問題,會給更新。
就是這樣(差不多)!一個小小的變化,顯然,select()必須在追加到文檔後發生。謝謝 – Nick