2

J'essaie de télécharger un mot ou un texte sélectionné sur mon navigateur (mozilla ou chrome). Lorsque je sélectionne un mot et que je clique avec le bouton droit de la souris, je peux voir l'option "enregistrer le texte sélectionné dans le fichier". Mais je n'ai pas réussi à faire fonctionner la fonctionnalité. Elle ne télécharge pas le texte. Je suis assez nouveau pour l'écriture d'extension. Je voulais apprendre des choses par des exemples simplesTéléchargement d'un texte sélectionné dans le navigateur - extension du navigateur

de manifest.json

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

de main.js

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

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

de 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(':'); 

Répondre

1

Le JavaScript à la question ne fonctionne pas Tâches supplémentaires avec l'élément <a> suivant a.dataset.downloadurl = ['text/plain', a.download, a.href].join(':');.

Ajoutez l'élément <a> créé à document.body et appelez a.click() pour que l'utilisateur soit invité à proposer une offre de téléchargement de fichier.

+0

Merci beaucoup – iyazici