gpt4 book ai didi

"Copy to Clipboard"的 Javascript 代码在 Internet Explorer 11 中不起作用

转载 作者:行者123 更新时间:2023-12-02 23:41:14 25 4
gpt4 key购买 nike

我有一段 Javascript 代码,当前调用特定网页,返回数据,然后将其复制到剪贴板。它可以在 Chrome、Safari 和 Firefox 中使用,但由于某种原因,复制功能在 IE 11 中无法使用。

响应正文返回了正确的数据,但我似乎无法将该数据发送到剪贴板。该代码必须是纯 JavaScript,因为它是通过开发人员门户使用的,但有一些限制/限制。本质上,我想避免导入 jQuery 库/使用 jQuery

function httpGet(theUrl)
{
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
function listener(e) {
e.clipboardData.setData("text/html", xmlhttp.responseText);
e.clipboardData.setData("text/plain", xmlhttp.responseText);
e.preventDefault();
}
document.addEventListener("copy", listener);
document.execCommand("copy");
document.removeEventListener("copy", listener);

return xmlhttp.responseText;
}
}
xmlhttp.open("GET", theUrl, false );
xmlhttp.send();
}

该函数在“onclick”HTML 事件中被调用,根据我的理解,该事件正常触发(考虑正在调用“theUrl”页面并返回数据)。任何有关剪贴板无法获取数据的原因的意见将不胜感激。谢谢!

最佳答案

在IE浏览器中,可以使用以下代码:

<script>
function Copy() {
if (window.clipboardData) {
window.clipboardData.clearData();
window.clipboardData.setData("Text", document.getElementById('txtacpy').value);
}
else {
alert("not support window.cliboardData")
}
}
function paste() {
if (window.clipboardData) {
document.getElementById('txtapaste').value = window.clipboardData.getData("Text");
}
}
</script>
<input type="button" id="btncopy" value="Copy" onclick="Copy()" />
<br />
<input type="text" name="txtacpy" id="txtacpy" />
<br />
<input type="button" id="btncopy" value="Paste" onclick="paste();" />
<br />
<input type="text" name="txtapaste" id="txtapaste" />

结果如 this .

注意:以上代码仅适用于IE浏览器,因此,您可能需要先检查浏览器是否为IE浏览器,请检查this threadthis thread .

关于 "Copy to Clipboard"的 Javascript 代码在 Internet Explorer 11 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56063191/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com