相关疑难解决方法(0)

使用Javascript访问剪贴板 - 没有Flash?

有可靠的方法使用Javascript访问客户端计算机的剪贴板吗?尝试执行此操作时,我仍然遇到权限问题.Google文档如何执行此操作?他们使用Flash吗?

我的主要目标是IE8,但也想支持FF和Chrome.

我已经看到了使用Flash执行此操作的技术,但我正在寻找纯粹的js路由:
使用Flash进行剪贴板访问

javascript flash clipboard

10
推荐指数
1
解决办法
4566
查看次数

复制到剪贴板 - 不适用于FF,Chrome

我使用下面提到的javascript将文本复制到剪贴板.它在IE中工作,但不适用于Firefox和Chrome.

请指教我,有什么问题?

   function setDataToclipboard() 
{

var str=document.getElementById("populatedString").value; 

if (window.clipboardData && clipboardData.setData) {
    clipboardData.setData("Text", str);
    alert("Copied!");
}
}
Run Code Online (Sandbox Code Playgroud)

html javascript cross-browser

10
推荐指数
4
解决办法
5万
查看次数

选择JQuery-UI选项卡标题中的文本到剪贴板

对于使用JQuery-UI选项卡的页面,如何允许用户在选项卡标题中选择文本?

我有一些动态标签,并希望用户能够选择标题复制到剪贴板.

例如在Demo页面上,我希望能够选择复制/粘贴'Nunc tincidunt'.'Proin dolor'和'Aenean lacinia'.甚至是标题的一部分(例如'Proin','Aenean','tincidunt').

jquery jquery-ui jquery-ui-tabs

10
推荐指数
2
解决办法
811
查看次数

单击链接或按钮时复制文本

我是网站开发的新手,并试图弄清楚如何在点击链接(使用html,php或javascript)时让我的用户自动将代码复制到他/她的鼠标(剪贴板)中.例如,我正在尝试创建这个个人网站,当用户点击我网站上的链接或按钮时,它应该自动将该文本代码复制到剪贴板.我看过像retailmenot.com这样的网站这样做:示例: - 在此输入图像描述

如果可以,请告诉我一个例子


更新:

<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">
</script>
<script>


$("#link").click(function(){
  var holdtext = $("#clipboard").innerText;
  Copied = holdtext.createTextRange();
  Copied.execCommand("Copy");
});


</script>
</head>
<body>

<hr>
<a href="http://www.w3schools.com" style="font-family:arial;color:black;font-size:25px;">Click here to copy the Code</a> <button onclick="copyToClipboard()">Copy Text</button>
<hr>

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

html javascript php

10
推荐指数
1
解决办法
7万
查看次数

自定义选择功能与复制到剪贴板纯JS

当前代码附加一个按钮,可以快速选择<pre>标记中的某些代码.我想要添加的是能够将该内容复制到剪贴板并将按钮文本更改为"复制".

如何通过修改下面的当前工作代码来实现它?我不介意使用clipboard.js,jQuery位或者只是原生的JS支持,因为它是从Chrome 43开始引入的.我只是不知道如何继续添加我需要的东西.

function selectPre(e) {
    if (window.getSelection) {
        var s = window.getSelection();
        if (s.setBaseAndExtent) {
            s.setBaseAndExtent(e, 0, e, e.innerText.length - 1);
        }
        else {
            var r = document.createRange();
            r.setStart(e.firstChild, 0);
            r.setEnd(e.lastChild, e.lastChild.textContent.length);
            s.removeAllRanges();
            s.addRange(r);
        }
    }
    else if (document.getSelection) {
        var s = document.getSelection();
        var r = document.createRange();
        r.selectNodeContents(e);
        s.removeAllRanges();
        s.addRange(r);
    }
    else if (document.selection) {
        var r = document.body.createTextRange();
        r.moveToElementText(e);
        r.select();
    }
}
var diff = document.getElementById('diff_table').getElementsByTagName('tr');
var difflen = diff.length;
for(i=0; i<difflen; i++) {
    var …
Run Code Online (Sandbox Code Playgroud)

javascript jquery html5 clipboard.js

10
推荐指数
1
解决办法
802
查看次数

现在 execCommand("copy") 已过时,将文本复制到剪贴板

我刚刚在 Mozilla 页面上看到 execCommand() 已过时https://developer.mozilla.org/en-US/docs/Web/API/Document/execCommand

“这个功能已经过时了。虽然它可能仍然在某些浏览器中工作,但不鼓励使用它,因为它可以随时被删除。尽量避免使用它。”

这是我目前用来在用户单击“复制文本”按钮时将文本复制到用户剪贴板的方法。还有另一种方法吗?

 var input = // input element with the text
 input.focus();
 input.setSelectionRange(0,99999);
 document.execCommand("copy");
 input.blur();
Run Code Online (Sandbox Code Playgroud)

编辑:这如何在 JavaScript 中复制到剪贴板?不回答问题。它提出了相同的过时解决方案。

javascript

10
推荐指数
1
解决办法
1792
查看次数

如何在没有超时的情况下在javascript中将大量html内容复制到剪贴板

我注意到document.execCommand('copy')命令在后台运行时会在大约 5 秒后超时。有没有办法绕过这个限制,或者如果需要更长的时间,也许可以回退?

这是我一直用于剪贴板文档的页面。例如,我有一个“准备”数据的函数(从表格数据生成 html),然后是第二个函数将它复制到带有一些附加标记的剪贴板。在大表上,从用户按下 Cmd-C 到生成 html 并能够复制它,这通常可能需要十秒钟。

此外,我注意到 Google Sheets 允许超过五秒的复制操作,所以我很好奇他们会怎么做:

# still works after 25 seconds!
[Violation] 'copy' handler took 25257ms     2217559571-waffle_js_prod_core.js:337 
Run Code Online (Sandbox Code Playgroud)

代码被缩小/混淆,因此很难阅读,但这里是上面的文件:https : //docs.google.com/static/spreadsheets2/client/js/2217559571-waffle_js_prod_core.js

作为参考,正在复制的数据量约为 50MB。请在复制操作上使用约 10 秒的延迟来模拟这个长时间运行的过程。


对于赏金,我希望有人可以展示一个执行单个 Cmd-C 的工作示例:

  • 是否可以在后台(即异步)进行长时间运行的复制操作,例如使用网络工作者?
  • 如果它必须同步完成,一个执行复制操作的示例,显示一些进展——例如,复制操作可能在每 10k 行左右后发出一个事件。

它必须生成 html 并且必须只涉及单个 Cmd-C(即使我们使用 apreventDefault并在后台触发复制事件。


您可以使用以下内容作为“html-generation”功能应该如何工作的模板:

function sleepFor( sleepDuration ){
    var now = new Date().getTime();
    while(new Date().getTime() < now + sleepDuration){ /* do nothing */ } 
}

// note: the data …
Run Code Online (Sandbox Code Playgroud)

javascript clipboard

10
推荐指数
1
解决办法
830
查看次数

如何以编程方式打开浏览器的JavaScript控制台?

如何使用JavaScript代码打开浏览器的JavaScript控制台?

if (ShowConsole() == false)
   alert('I cannot open your JavaScript console, please "
   + "use your browser\'s menu to open manually.')
else console.log('now you can see some message')
Run Code Online (Sandbox Code Playgroud)

我建议ShowConsole()功能不存在,并且是我的想象力的产物,您需要转到菜单并找到正确的项目并单击它。并在不同的浏览器中以不同的方式进行操作。我正在寻找一些特定于浏览器的API来帮助懒惰的开发人员。

“打开”是指使其可见,就像用户选择了相应的菜单命令一样。

javascript browser developer-tools console.log

9
推荐指数
1
解决办法
3092
查看次数

如何将div的内容复制到没有flash的剪贴板

这是它:)我有id为一个div #toCopy,并与ID按钮#copy.按#copy时,将#toCopy内容复制到剪贴板的最佳方法是什么?

html javascript jquery copy

9
推荐指数
1
解决办法
2万
查看次数

如何在使用jQuery时处理Javascript错误?

我的情况

嗨,我相对较新的Javascript所以我的问题可能很容易.我为我的公司开发了多个webapps.我经常遇到的一个问题是Javascript错误.我知道如何使用try/catch来处理它们.

我想做的事

我想要在服务器上写一个日志文件,或者给用户一些他们可以发送给我的东西,而不需要任何调试知识.这意味着,必须通知用户在两种情况下都发生了错误.

我已经做了什么

我有一个想法是使用try catch并使用我在这里找到的代码:https://stackoverflow.com/a/6055620/3581748,以便用户向我发送堆栈跟踪.

例:

<button id="demo" onClick="errorHandling()">Produce error</button>
<script>
function errorHandling() {
    try {
        document.getElementById("somethingNotExisting").value * 2;
    } catch (_err) {
        window.prompt("Copy to clipboard: Ctrl+C, Enter", _err.stack);
    }
}
</script>
Run Code Online (Sandbox Code Playgroud)

或者在这里:https://jsfiddle.net/n79xv6nt/

哪个适用最多次.

问题

我有时使用jQuery在我的"main"页面中嵌入脚本文件.例:

<div id="forScript"></div>
<script>
    $("#forScript").load('scripts/additionalScript.php');
</script>
Run Code Online (Sandbox Code Playgroud)

如果我使用上面的代码(下面的代码"我已经做了什么").我没有得到一个堆栈跟踪,告诉我发生错误的位置.它反而指向一个jQuery文件.Google Chrome控制台会显示真实的堆栈跟踪.另一个问题是,我拿到亚麻布后如何找到文件?在我的IDE中,线条是不同的,因为中间有PHP.

我的问题

是否有可能为此案件获得良好的错误消息?(最好不要自己抛出错误)如何访问附加脚本并查看chrome看到的相同亚麻布?你会如何通知用户/记录错误?

javascript error-handling jquery

9
推荐指数
1
解决办法
150
查看次数