鍍金池/ 問答/HTML5  PHP  HTML/ JS可以實現(xiàn)瀏覽器之外的截圖功能嗎?

JS可以實現(xiàn)瀏覽器之外的截圖功能嗎?

問題:

其實前端截圖可以用canvas提供的API實現(xiàn),但是現(xiàn)在公司部門提需求要做一個瀏覽器之外也可以截圖的功能,就是說他們想截取電腦桌面的一些內(nèi)容,然后再保存在網(wǎng)頁上提交。   

問下這個可以實現(xiàn)嗎,要是不能的話,請問還有那些方法可以實現(xiàn),并且可以和前端實現(xiàn)交互的。

回答
編輯回答
伴謊

Phantomjs 你值得擁有

2017年2月14日 03:13
編輯回答
安淺陌

如果JS可以實現(xiàn)瀏覽器之外的截圖,我們還能放心的瀏覽網(wǎng)站嗎?
訪問個頁面就上傳一下你的桌面截圖。。。
不知道你怕不怕,反正我是怕的

2017年2月2日 17:10
編輯回答
雨蝶

截圖本身這個功能只能依賴像QQ和微信的截圖工具,而無法用js完成。
所以能實現(xiàn)的功能僅僅只有在工具截圖完后,通過js將截圖粘貼到頁面里,再上傳到服務(wù)器。

之前項目的截圖粘貼代碼示例

$('textarea').on("paste", function (event) {
    // 監(jiān)聽粘貼事件
    var items = (event.clipboardData || event.originalEvent.clipboardData).items;
    console.log(items);
    for (index in items) {
      var item = items[index];
      var type = item.type;
      if (type && type.split('/')[0] == 'image') {
        var blob = item.getAsFile();
        var size = blob.size;
        if (size / (1024 * 1024) < 2) {
          var reader = new FileReader();
          reader.onload = function (e) {
            var base64Str = e.target.result;
            // console.log(base64Str);
            // 上傳至服務(wù)器邏輯
            
          };
          reader.readAsDataURL(blob);
        } else {
          layer.msg("圖片大小不能超過2M", {icon: 5});
        }
      }
    }
  })
2018年4月7日 13:45
編輯回答
還吻

有一些古老的Java Applet可以實現(xiàn),不過現(xiàn)在Flash都沒人用了,java用的更少,大部分用戶機器上應(yīng)該都沒有JRE

2017年11月13日 14:04
編輯回答
敢試

這個是無法實現(xiàn)的。js執(zhí)行的環(huán)境是瀏覽器里。他不能調(diào)用操作系統(tǒng)的里面的api。實現(xiàn)不了截屏,但是可以實現(xiàn)截取當(dāng)前網(wǎng)頁的內(nèi)容。
一些PC客戶端應(yīng)用能夠截屏是因為他們運行在操作系統(tǒng)上,能夠調(diào)用系統(tǒng)的api實現(xiàn)截屏。

2017年10月30日 19:42