但是我怎么在键盘检测到用户触发ctrl+v的时候获取复制的那个aaa的内容啊~ 求高手啊!
不行~ 火狐下报错~ document.onkeydown = function(e){
var e = window.event ? window.event : e;
if(e.ctrlKey && e.keyCode == 86){
alert(getClipboard());
}
} 我调用了你那个方法·····弹不出来!
火狐可能会阻止javascript运行,你设置为允许,用下面的代码
function getClipboard() {
if (window.clipboardData) {
return (window.clipboardData.getData('Text'));
}
else if (window.netscape) {
netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
var clip = Components.classes['@mozilla.org/widget/clipboard;1'].createInstance(Components.interfaces.nsIClipboard);
if (!clip) return;
var trans = Components.classes['@mozilla.org/widget/transferable;1'].createInstance(Components.interfaces.nsITransferable);
if (!trans) return;
trans.addDataFlavor('text/unicode');
clip.getData(trans, clip.kGlobalClipboard);
var str = new Object();
var len = new Object();
try {
trans.getTransferData('text/unicode', str, len);
}
catch (error) {
return null;
}
if (str) {
if (Components.interfaces.nsISupportsWString) str = str.value.QueryInterface(Components.interfaces.nsISupportsWString);
else if (Components.interfaces.nsISupportsString) str = str.value.QueryInterface(Components.interfaces.nsISupportsString);
else str = null;
}
if (str) { return (str.data.substring(0, len.value / 2));
}
}
return null;
}
function readClipboardData() {
var str = getClipboard();
var len = str.split("\n");//获取行数
document.getElementById("txtContent").value = str;
}
不行~ 还是报错!
追答怎么可能呐,我在这边测试的可以啊,只是在火狐上时会弹出“来自“file://”的脚本请求增强的不安全的能力,可能会危及您计算机或数据的安全:
在您计算机上执行或安装软件
请在您确信此代码不带病毒或恶意程序的前提下允许脚本使用此能力。”
选择“是”就可以了,
你那边是弹出什么样的错误啊?
没事了 还是很谢谢啊! 给你分···
我的世界的全部指令
详情请查看视频回答
我再表格中某个单元格放了一张图片,页面已经引用了js文件。
建议创建一个按钮来控制:<script src="https:\/\/ajax.googleapis.com\/ajax\/libs\/jquery\/1.4.2\/jquery.js"><\/script> <div id="aaa">23<\/div> <div id="bbb">按钮<\/div> <script> ('#bbb').toggle(function(){ ('#aaa').hide()},function(){ ('#aaa').show()})<\/script> ...