98 votes

Coller une image à partir du presse-papiers en utilisant JavaScript

Comment coller une image du presse-papiers dans un éditeur de texte riche personnalisé en utilisant le javascript ? (ctrl+c et ctrl+v ou un instantané).

Quelqu'un a-t-il utilisé l'éditeur de texte riche d'Ajax ? Est-ce que coller une image du presse-papiers à Ajax RTE fonctionne ?

N'hésitez pas à partager vos réflexions !

Gracias.

6 votes

AJAX est généralement considéré comme une technologie... est-ce qu'une véritable organisation de développement web s'est sérieusement appelée AJAX ? Ils cherchent juste les ennuis.

2 votes

Eh bien, étant donné que le nom AJAX a été arraché à un guerrier grec mythique (peu importe ce qu'ils prétendent être un acronyme), qu'est-ce qu'une autre couche d'arnaque ?

40voto

max.weller Points 987

Comme cette question apparaît encore souvent dans les résultats de recherche de Google, je tiens à souligner que c'est possible aujourd'hui, au moins dans Google Chrome (2011) dans tous les navigateurs modernes (2018). Ils l'ont implémenté pour l'utiliser dans GMail, mais il est disponible pour tous les sites web.

Comment fonctionne la fonctionnalité "coller une image à partir du presse-papiers" dans Gmail et Google Chrome 12+ ?

5 votes

C'est maintenant possible dans d'autres navigateurs. J'utilise FF17 et je peux utiliser la fonctionnalité de collage depuis le presse-papiers d'imgur.com.

0 votes

@Mr5o1 cela a parfaitement fonctionné pour moi vous devriez le poster comme sa propre réponse

0 votes

@AlexS n'a pas l'air d'en avoir besoin, peut-être que l'OP pourrait l'ajouter à cette réponse.

13voto

Jaykul Points 6484

C'est désormais possible dans Chrome et Firefox. Je ne suis pas sûr pour IE/Safari.

Regardez les sites imgur.com, onpaste et pasteboard.co à titre d'exemples, et constatez les avantages suivants code pour pasteboard sur github ainsi que L'excellent article de Joel sur son blog.

Pour mémoire, il faut que l'utilisateur appuie sur Ctrl+V sur votre élément, et ensuite vous pouvez capturer les données dans le fichier pâte en lisant les données de event.clipboardData mais pour que cela fonctionne à un niveau inférieur, vous devez vous assurer que le focus est sur un objet vide. contentable et tirer les résultats de là, ce qui ne fonctionne pas bien dans Firefox 22. Voir aquí

10voto

belaz Points 531

Pour l'instant, j'ai trouvé le Objet clipboardData .

Mais il ne récupère que le format texte ou l'URL du presse-papiers. clipboardData est réservé à IE, il fonctionne avec une chaîne de caractères et renvoie null si on colle une image.

un exemple de test

 <form>
    <input type="text" id="context"  onClick="paste();">  
  </form>

<script type="text/javascript"> 

function paste() {  

var sRetrieveData = clipboardData.getData("Text");
document.getElementById('context').value = sRetrieveData;        

}
</script>

Par défaut, l'accès au presse-papiers n'est pas activé sur firefox, explication aquí . De l'autre côté, execCommand() ne traite que les valeurs textuelles et n'est pas compatible avec Firefox.

Comme les autres l'ont dit, le fait que le code fonctionne sur IE est un risque pour la sécurité, n'importe quel site peut accéder au texte de votre presse-papiers.

Le moyen le plus simple de copier l'URL relative d'une image est d'utiliser une applet java ou un plugin ActiveX de Windows, code .net ou faites-le glisser et déposez-le.

0 votes

Est-il possible de récupérer une image à partir des données du presse-papiers en utilisant le javascript ?

0 votes

Tu ne peux pas. Pour être honnête, je n'ai pas testé les paramètres "sécurité native désactivée", mais d'après mes recherches, il n'y a aucun moyen de le faire.

6 votes

Vous pouvez le faire dans gmail, donc c'est possible.

10voto

Saqib Ali Points 421

Les nouveaux navigateurs, comme Firefox 4, prennent en charge le collage des données d'image depuis le presse-papiers dans un RTE, sous la forme suivante URI de données avec des données PNG encodées . Cependant, la plupart des applications web analysent mal ces URI de données et les rejettent. Yahoo mail les traite correctement. Cependant, Gmail et Hotmail les rejettent. J'ai informé Google et Microsoft de ce problème.

0voto

aleemb Points 12138

Malheureusement, il n'est pas possible de coller une image de votre presse-papiers dans le RTE.

Si vous copiez un blob à partir d'une application de bureau telle que Microsoft Word qui contient une image et du texte, l'image apparaîtra comme une référence brisée (bien que les proportions soient correctes) et le texte sera collé correctement (le formatage sera perdu).

La seule chose possible est de copier une image dans le RTE et de la recoller dans le RTE.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X