Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在浏览器上下载选定文本-浏览器扩展_Javascript_Google Chrome_Google Chrome Extension_Browser Extension - Fatal编程技术网

Javascript 在浏览器上下载选定文本-浏览器扩展

Javascript 在浏览器上下载选定文本-浏览器扩展,javascript,google-chrome,google-chrome-extension,browser-extension,Javascript,Google Chrome,Google Chrome Extension,Browser Extension,我正在尝试在浏览器(mozilla或chrome)上下载选定的单词或文本。当我选择一个单词并右键单击它时,我可以看到“将所选文本保存到文件”选项。但我无法让功能正常工作。它无法下载文本。我对扩展写作还不太熟悉。我想通过简单的例子来学习 manifest.json { "manifest_version":2, "version":"1.0", "name": "Selected Text Saver", "permissio

我正在尝试在浏览器(mozilla或chrome)上下载选定的单词或文本。当我选择一个单词并右键单击它时,我可以看到“将所选文本保存到文件”选项。但我无法让功能正常工作。它无法下载文本。我对扩展写作还不太熟悉。我想通过简单的例子来学习

manifest.json

    {
        "manifest_version":2,
        "version":"1.0",
        "name": "Selected Text Saver",
        "permissions": [
            "contextMenus",
            "activeTab"
        ],
        "background": {
        "scripts": ["main.js"]
        }
    }
main.js

    mouse1 = function(){
        chrome.tabs.executeScript({
            file: 'saver.js'
        });
    };

    chrome.contextMenus.create({
        title: "Save this selected text to file",
        contexts:["selection"],
        onclick: mouse1
    });
saver.js

    var text = window.getSelection().toString();
    var bb = new Blob([text], {type: 'text/plain'});
    var a = document.createElement('a');
    a.download = document.title.slice(0, 50).replace('/*[<>:/\\|?*]*/g', '') + '.txt';
    a.href = window.URL.createObjectURL(bb);
    a.dataset.downloadurl = ['text/plain', a.download, a.href].join(':');
var text=window.getSelection().toString();
var bb=新Blob([text],{type:'text/plain'});
var a=document.createElement('a');
a、 download=document.title.slice(0,50)。替换('/*[:/\\\\\?*]*/g','')+'.txt';
a、 href=window.URL.createObjectURL(bb);
a、 dataset.downloadurl=['text/plain',a.download,a.href].join(':');

问题中的JavaScript不会使用
a.dataset.downloadurl=['text/plain',a.download,a.href]之后创建的
元素执行任何进一步的任务


将创建的
元素附加到
文档.body
并调用
a。单击()
,系统将提示用户提供文件下载。

非常感谢