成人精品一区二区三区中文字幕-成人精品一区二区三区-成人精品一级毛片-成人精品亚洲-日本在线视频一区二区-日本在线视频免费

導航首頁 ? 技術教程 ? jQuery獲取剪貼板內容的方法
全站頭部文字 我要出現在這里
jQuery獲取剪貼板內容的方法 676 2024-02-28   

本文實例講述了jQuery獲取剪貼板內容的方法。分享給大家供大家參考,具體如下:

這兩天弄fckeditor粘貼功能,隨著工作的深入和在網上查詢資料,知道了在網頁中一般是不允許訪問“剪貼板”的,因為這樣存在著很大的安全隱患,我自己也嘗試著寫了一個簡單的demo

在IE和FF中剪貼板的訪問是可控的,但是在Opera、Chrome、Safari瀏覽器中是不允許訪問的,這樣就產生了瀏覽器兼容的問題,怎么樣才能讓其他的瀏覽器兼容這個功能呢,在網上查找了一些資料——“使用flash去訪問剪貼板”,然后把得到的值給JS,這樣間接的訪問了剪貼板里面的內容了

下面的代碼只支持IE和FF,是我在網上找的DEMO,自己只是在這里匯總了一下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<script src="http://www.gimoo.net/t/1902/lib/jquery-1.6.4.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(
  function(){
    $("#show_clipbrd").click(function(){
      if($.browser.msie){
        ie_Show();
      }else{
        ff_show();
      }
    });
    $("#set_clipbrd").click(function(){
      if($.browser.msie){
        ie_set();
      }else{
        ff_set();
      }
    });
  }
);
function ie_Show()
{
  //得到剪貼板的內容
  var str1=window.clipboardData.getData("text");
  alert(str1);
}
function ff_show() {
 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) {
  alert(str.data.substring(0, len.value / 2));
  return (str.data.substring(0, len.value / 2));
 }
 return null;
}
function ie_set(){
  //顯示剪貼板的內容是text類型的,給剪貼板的賦值為后面的字符串
  var str1=window.clipboardData.setData("text","<strong>my name is huangbiao</strong>");
  alert(window.clipboardData.getData("text"));
}
function ff_set(){
  //將copy變量的值放到內存當中去
  var copy="<strong>my name is huangbiao</strong>";
  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');
  var str = new Object();
  var len = new Object();
  var str = Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);
  var copytext = copy;
  str.data = copytext;
  trans.setTransferData("text/unicode", str, copytext.length * 2);
  var clipid = Components.interfaces.nsIClipboard;
  if (!clip) return false;
  clip.setData(trans, null, clipid.kGlobalClipboard);
  alert("copy的信息為(可以用ctrl + v測試) :"+copy);
}
</script>
<title>瀏覽器訪問剪貼板</title>
</head>
<body>
  <div>
    <span>在IE中是對外有接口的,可以通過window.clipboardData對象得到剪貼板的內容,這樣就容易導致開發人員在后臺寫一個程序記錄用戶剪貼板的內容,這樣可以把海量的數據集中起來做數據挖掘,這個對用戶的安全來說是很可怕的,因此在訪問的時候會提示用戶是否允許訪問剪貼板的內容。
    </span>
  </div><br>
  <div>
    <span>    在IE意外的瀏覽器是不允許訪問剪貼板內容的,只有拒絕才是最安全的,所以在火狐等其他瀏覽器中不能通過window.clipboardData對象來訪問剪貼板的內容
    </span>
  </div>
  <button id="show_clipbrd">顯示剪貼板的內容</button>
  <button id="set_clipbrd">給剪貼板設置信息</button>
</body>
</html>

更多關于jQuery相關內容感興趣的讀者可查看本站專題:《jQuery常用插件及用法總結》、《jquery中Ajax用法總結》、《jQuery表格(table)操作技巧匯總》、《jQuery拖拽特效與技巧總結》、《jQuery擴展技巧總結》、《jQuery常見經典特效匯總》、《jQuery動畫與特效用法總結》及《jquery選擇器用法總結》

希望本文所述對大家jQuery程序設計有所幫助。



主站蜘蛛池模板: 酒图片| 山子高科股吧| 关于心情的词语| 2014春节联欢晚会| 闵度允演的电影| 新手驾到综艺免费观看完整版| 我不知道明天的道路歌词歌谱| 嫂子的职业韩| 杨子姗演过的电影电视剧| 电影潘金莲| 还珠格格演员表| 毕业论文5000字大专| xxxxxxxxxxxxx| 两人生猴子免费观看完整版视频| 艳妇乳肉豪妇荡乳ⅹxxo电影| 柏欣彤12点以后跳的广场舞| 爱很简单简谱| 椿十三郎| 749局演员表| 爱上老妈1994年电影完整版| 爱 死亡和机器人| 拇指姑娘故事完整版| 情事2019| 江南好简谱| 柏拉图的电影| 年轻的丈夫| 林正英僵尸大全免费看| 自拍在线| lol小孩子不能看的动画视频| 中国往事演员表| 少年的奇幻漂流记| 妇女停经前有什么征兆| 最佳男朋友| 世界赠予我的钢琴曲| 素珍| 王牌空战| 小数加减法100道题| 浙江卫视今天全部节目表| 无法抗拒的爱| 加藤视频下载| 恶老板|

!??!站長長期在線接!??!

網站、小程序:定制開發/二次開發/仿制開發等

各種疑難雜癥解決/定制接口/定制采集等

站長微信:lxwl520520

站長QQ:1737366103