How to copy text contents in body to clipboard
I need to copy all the text in my body to the clipboard,
here is what I've tried so far:
- selecting the text nodes and then the command
document.execCommand("copy")
selecting the text nodes and then using the keyboard dispatcher:
$("body").contents().filter(function(){return this.nodeType === 3;}).select();
document.body.dispatchEvent(new KeyboardEvent("keyup", {bubbles: true, cancelable: false, key: "C", char: "C", ctrlKey: true}));
No errors pop up. I've read in the Chromium documentation that the copy command is disabled for security reasons. Any idea how to get around this?
javascript clipboard chromium-embedded
add a comment |
I need to copy all the text in my body to the clipboard,
here is what I've tried so far:
- selecting the text nodes and then the command
document.execCommand("copy")
selecting the text nodes and then using the keyboard dispatcher:
$("body").contents().filter(function(){return this.nodeType === 3;}).select();
document.body.dispatchEvent(new KeyboardEvent("keyup", {bubbles: true, cancelable: false, key: "C", char: "C", ctrlKey: true}));
No errors pop up. I've read in the Chromium documentation that the copy command is disabled for security reasons. Any idea how to get around this?
javascript clipboard chromium-embedded
1
Possible duplicate of How do I copy to the clipboard in JavaScript?
– Daan
Nov 27 '18 at 10:25
add a comment |
I need to copy all the text in my body to the clipboard,
here is what I've tried so far:
- selecting the text nodes and then the command
document.execCommand("copy")
selecting the text nodes and then using the keyboard dispatcher:
$("body").contents().filter(function(){return this.nodeType === 3;}).select();
document.body.dispatchEvent(new KeyboardEvent("keyup", {bubbles: true, cancelable: false, key: "C", char: "C", ctrlKey: true}));
No errors pop up. I've read in the Chromium documentation that the copy command is disabled for security reasons. Any idea how to get around this?
javascript clipboard chromium-embedded
I need to copy all the text in my body to the clipboard,
here is what I've tried so far:
- selecting the text nodes and then the command
document.execCommand("copy")
selecting the text nodes and then using the keyboard dispatcher:
$("body").contents().filter(function(){return this.nodeType === 3;}).select();
document.body.dispatchEvent(new KeyboardEvent("keyup", {bubbles: true, cancelable: false, key: "C", char: "C", ctrlKey: true}));
No errors pop up. I've read in the Chromium documentation that the copy command is disabled for security reasons. Any idea how to get around this?
javascript clipboard chromium-embedded
javascript clipboard chromium-embedded
edited Nov 27 '18 at 10:20
Chris G
6,30221021
6,30221021
asked Nov 27 '18 at 10:18
Nico HaegensNico Haegens
286
286
1
Possible duplicate of How do I copy to the clipboard in JavaScript?
– Daan
Nov 27 '18 at 10:25
add a comment |
1
Possible duplicate of How do I copy to the clipboard in JavaScript?
– Daan
Nov 27 '18 at 10:25
1
1
Possible duplicate of How do I copy to the clipboard in JavaScript?
– Daan
Nov 27 '18 at 10:25
Possible duplicate of How do I copy to the clipboard in JavaScript?
– Daan
Nov 27 '18 at 10:25
add a comment |
1 Answer
1
active
oldest
votes
Copying into clipboard will only work on a true user interaction. Without a true user interaction it will usually fail. I believe it's for security measures.
So hook it on a click event. Then I also suggest you use a library like clipboard.js that sorts out trouble with different browsers and allows you to put in the html variety and plaintext copy.
If you'd use clipboard.js you could use code like this:
plaintext = "boo";
htmltext = "<strong>boo</strong>";
document.getElementById("copybutton").addEventListener('click', function() {
clipboard.copy({
'text/plain': plaintext,
'text/html': htmltext
}).then(
function(){
swal({
title: "Successfully copied",
text: "The thing has been put in your clipboard, happy pasting!",
type: "success",
closeOnConfirm:true,
confirmButtonText: "Ok",
timer: 1200
});
},
function(err){
window.prompt("Something went wrong with automatically copying the data to clipboard.nPlease press CTRC + C to copy the data",plaintext );
});
}
}
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53497405%2fhow-to-copy-text-contents-in-body-to-clipboard%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
Copying into clipboard will only work on a true user interaction. Without a true user interaction it will usually fail. I believe it's for security measures.
So hook it on a click event. Then I also suggest you use a library like clipboard.js that sorts out trouble with different browsers and allows you to put in the html variety and plaintext copy.
If you'd use clipboard.js you could use code like this:
plaintext = "boo";
htmltext = "<strong>boo</strong>";
document.getElementById("copybutton").addEventListener('click', function() {
clipboard.copy({
'text/plain': plaintext,
'text/html': htmltext
}).then(
function(){
swal({
title: "Successfully copied",
text: "The thing has been put in your clipboard, happy pasting!",
type: "success",
closeOnConfirm:true,
confirmButtonText: "Ok",
timer: 1200
});
},
function(err){
window.prompt("Something went wrong with automatically copying the data to clipboard.nPlease press CTRC + C to copy the data",plaintext );
});
}
}
add a comment |
Copying into clipboard will only work on a true user interaction. Without a true user interaction it will usually fail. I believe it's for security measures.
So hook it on a click event. Then I also suggest you use a library like clipboard.js that sorts out trouble with different browsers and allows you to put in the html variety and plaintext copy.
If you'd use clipboard.js you could use code like this:
plaintext = "boo";
htmltext = "<strong>boo</strong>";
document.getElementById("copybutton").addEventListener('click', function() {
clipboard.copy({
'text/plain': plaintext,
'text/html': htmltext
}).then(
function(){
swal({
title: "Successfully copied",
text: "The thing has been put in your clipboard, happy pasting!",
type: "success",
closeOnConfirm:true,
confirmButtonText: "Ok",
timer: 1200
});
},
function(err){
window.prompt("Something went wrong with automatically copying the data to clipboard.nPlease press CTRC + C to copy the data",plaintext );
});
}
}
add a comment |
Copying into clipboard will only work on a true user interaction. Without a true user interaction it will usually fail. I believe it's for security measures.
So hook it on a click event. Then I also suggest you use a library like clipboard.js that sorts out trouble with different browsers and allows you to put in the html variety and plaintext copy.
If you'd use clipboard.js you could use code like this:
plaintext = "boo";
htmltext = "<strong>boo</strong>";
document.getElementById("copybutton").addEventListener('click', function() {
clipboard.copy({
'text/plain': plaintext,
'text/html': htmltext
}).then(
function(){
swal({
title: "Successfully copied",
text: "The thing has been put in your clipboard, happy pasting!",
type: "success",
closeOnConfirm:true,
confirmButtonText: "Ok",
timer: 1200
});
},
function(err){
window.prompt("Something went wrong with automatically copying the data to clipboard.nPlease press CTRC + C to copy the data",plaintext );
});
}
}
Copying into clipboard will only work on a true user interaction. Without a true user interaction it will usually fail. I believe it's for security measures.
So hook it on a click event. Then I also suggest you use a library like clipboard.js that sorts out trouble with different browsers and allows you to put in the html variety and plaintext copy.
If you'd use clipboard.js you could use code like this:
plaintext = "boo";
htmltext = "<strong>boo</strong>";
document.getElementById("copybutton").addEventListener('click', function() {
clipboard.copy({
'text/plain': plaintext,
'text/html': htmltext
}).then(
function(){
swal({
title: "Successfully copied",
text: "The thing has been put in your clipboard, happy pasting!",
type: "success",
closeOnConfirm:true,
confirmButtonText: "Ok",
timer: 1200
});
},
function(err){
window.prompt("Something went wrong with automatically copying the data to clipboard.nPlease press CTRC + C to copy the data",plaintext );
});
}
}
edited Dec 3 '18 at 16:14
answered Nov 27 '18 at 10:23
TschallackaTschallacka
16.1k75493
16.1k75493
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53497405%2fhow-to-copy-text-contents-in-body-to-clipboard%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
1
Possible duplicate of How do I copy to the clipboard in JavaScript?
– Daan
Nov 27 '18 at 10:25