最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

js剪切板應用clipboardData實例解析

 更新時間:2016年05月29日 11:34:02   作者:人生夢想起飛  
這篇文章主要為大家詳細介紹了js剪切板應用clipboardData實例,并分享了四種實現方法,感興趣的小伙伴們可以參考一下

目前僅有高版本的 Chrome 瀏覽器支持這樣直接粘貼,其他瀏覽器目前為止還無法粘貼,不過火狐和ie11瀏覽器在可編輯的div中能夠粘貼截圖的圖片也是base64位和Chrome利用clipboardData的效果是一樣的,只是在火狐和ie11瀏覽器中目前還無法實現類似用clipboardData直接獲取圖片的base64數據,它是自帶的直接進去img數據。

完整實例:

<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title>利用clipboardData在網頁中實現截屏粘貼的功能</title>
<style type="text/css">
  .box{ width:500px; height:300px; border:1px solid #ddd; }
  .box img{max-width:480px; max-height: 100%; text-align: center;}
</style>
</head>
<body>
<div class="box" contenteditable="true" id="testInput">
</div>
<script type="text/javascript">
(function(){
  var imgReader = function( item ){
    var blob = item.getAsFile(),
      reader = new FileReader();
    reader.onload = function( e ){
      var img = new Image();
      img.src = e.target.result;
      console.log(img);
      document.getElementById('testInput').appendChild( img );
    };
    reader.readAsDataURL( blob );
  };

  document.getElementById( 'testInput' ).addEventListener( 'paste', function( e ){
    //window.clipboardData.getData("Text") ie下獲取黏貼的內容 e.clipboardData.getData("text/plain")火狐谷歌下獲取黏貼的內容
    //alert(e.clipboardData.getData("text/plain") )
    var clipboardData = e.clipboardData,//谷歌
      i = 0,
      items, item, types;
       console.log('0')

    if( clipboardData ){
       console.log('1')
      items = clipboardData.items;
      if( !items ){
        console.log(2)
        return;
      }
      console.log(3)
      item = items[0];
      types = clipboardData.types || [];
      for( ; i < types.length; i++ ){
        if( types[i] === 'Files' ){
          item = items[i];
          break;
        }
      }
      if( item && item.kind === 'file' && item.type.match(/^image\//i) ){
        imgReader( item );
      }
     }
   },false);
})(); 
</script>


</script>

</body>
</html> 

實例二:

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Document</title>
</head>
<body>
 <div id="div" style="width:100%;height:700px;border:1px solid #ccc;padding:20px" contenteditable="true"></div>
 <script>
  var div = document.getElementById('div');
  div.addEventListener('paste', function(e) {
   if(e.clipboardData) {
    for(var i = 0; i < e.clipboardData.items.length; i++) {
     var c = e.clipboardData.items[i];
     var f = c.getAsFile();
     var reader = new FileReader();
     reader.onload = function(e) {
      div.innerHTML += '<img src="' + e.target.result + '">';
     }
     reader.readAsDataURL(f);
    }
   }
  });
 </script>
</body>
</html>

實現的方法:

方法一:在Chrome瀏覽器中能夠直接通過clipboardData獲取截圖的圖片數據,可以用ajax將數據傳給后臺,然后由后臺開發(fā)返回帶域名的圖片地址

方法二:由于在火狐等瀏覽器中無法直接獲取圖片數據,所以可以在粘貼的時候獲取div中的img的數據是base64的url數據,然后同方法一用ajax

方法三:可以統(tǒng)一在點擊發(fā)布或者保存消息時,獲取div中的img的數據是base64的url數據,然后同方法一用ajax,如果有多張就循環(huán),也或者是直接點擊保存和發(fā)布的時候,后端開發(fā)做處理,返回來的顯示信息中直接做處理,這樣我們在div中就不需要把base64的url替換成后端返回的帶域名的地址

方法四:在div中粘貼的時候彈出一個彈出層,然后彈出層中有截圖的圖片預覽可確認上傳按鈕,點擊上傳按鈕走ajax上傳圖片同方法一

相關文章

  • 基于el-slider實現一個能拖動的時間范圍選擇器

    基于el-slider實現一個能拖動的時間范圍選擇器

    這篇文章主要介紹了基于el-slider實現一個能拖動的時間范圍選擇器,并通過實例代碼介紹了基于element-ui el-slider實現滑動限位器的方法,需要的朋友可以參考下
    2024-02-02
  • javascript DOM對象的學習實例代碼

    javascript DOM對象的學習實例代碼

    javascript DOM對象的學習實例代碼
    2009-06-06
  • 微信小程序自定義組件Component的代碼詳解

    微信小程序自定義組件Component的代碼詳解

    這篇文章主要給大家介紹了關于微信小程序自定義組件Component的相關資料,文中通過實例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2023-03-03
  • 解決iframe嵌套第三方網址不能訪問的各種報錯

    解決iframe嵌套第三方網址不能訪問的各種報錯

    在一些場景下,我們的網站需要通過iframe標簽嵌入第三方廠家的頁面,這時候就得通過iframe標簽去引入需要嵌入網頁的網址了,這篇文章主要給大家介紹了關于解決iframe嵌套第三方網址不能訪問的各種報錯,需要的朋友可以參考下
    2024-09-09
  • js實現頁面跳轉的幾種方法小結

    js實現頁面跳轉的幾種方法小結

    下面小編就為大家?guī)硪黄猨s實現頁面跳轉的幾種方法小結。小編覺得挺不錯的,現在分享給大家,也給大家做個參考,一起跟隨小編過來看看吧
    2016-05-05
  • JS文件上傳神器bootstrap fileinput詳解

    JS文件上傳神器bootstrap fileinput詳解

    這篇文章主要介紹了JS文件上傳神器Bootstrap FileInput,樣式非常美觀,并且支持上傳文件預覽,ajax同步或異步上傳,拖曳文件上傳等炫酷的功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-11-11
  • js實現購物網站商品放大鏡效果

    js實現購物網站商品放大鏡效果

    這篇文章主要為大家詳細介紹了js實現購物網站商品放大鏡效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-10-10
  • js判斷ie版本號的簡單實現代碼

    js判斷ie版本號的簡單實現代碼

    本篇文章主要是對js判斷ie版本號的簡單實現代碼進行了介紹,需要的朋友可以過來參考下,希望對大家有所幫助
    2014-03-03
  • bootstrap表單按回車會自動刷新頁面的解決辦法

    bootstrap表單按回車會自動刷新頁面的解決辦法

    這篇文章主要介紹了bootstrap表單按回車會自動刷新頁面的問題及解決辦法,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-03-03
  • 微信小程序實現倒計時調用相機自動拍照功能

    微信小程序實現倒計時調用相機自動拍照功能

    這篇文章主要為大家詳細介紹了微信小程序實現倒計時調用相機自動拍照功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-06-06

最新評論

慈利县| 蓝田县| 建平县| 鄢陵县| 房山区| 清苑县| 十堰市| 湟中县| 吴桥县| 明光市| 宁城县| 黔东| 扎鲁特旗| 永济市| 花莲市| 吴桥县| 汉源县| 武城县| 沂南县| 栖霞市| 曲阳县| 惠来县| 汉川市| 民县| 漳平市| 肥城市| 青阳县| 吕梁市| 榆中县| 莱阳市| 子长县| 阳东县| 宁国市| 旬邑县| 顺平县| 宁德市| 儋州市| 上栗县| 那坡县| 耒阳市| 法库县|