9

I'm trying to add an image paste function to my web application, using the standard routine:

$('textarea').on('paste', function (ev) {
    var clipboardData = ev.originalEvent.clipboardData;

    $.each(clipboardData.items, function (i, item) {
        if (item.type.indexOf("image") !== -1) {
            var reader = new FileReader();

            reader.readAsDataURL(item.getAsFile());
            reader.addEventListener('loadend', ...);
            ...
        }
    });
});

The full sample can be found here: http://jsfiddle.net/t8t2zj6k/

It works correctly when I copy & paste an image from an image viewer software, but when I'm trying to do the same thing using a file browser (e.g. Finder on Mac or Nautilus on Linux) as a result I get only a text string with the file path or even an image with file type icon instead of an original file.

Is there any way to handle pastes from a file browser properly?

4
  • Possibly this could help you? stackoverflow.com/questions/6333814/… Commented Apr 18, 2015 at 22:34
  • @lemieuxster, thanks, but unfortunately I'm already using the exact same solution provided in the accepted answer. My case is a bit different - while the basic paste function is working well, there's an issue with pasting from Finder. Commented Apr 18, 2015 at 22:50
  • Seems to maybe be an issue with Chrome? I don't see anything in Safari or Firefox. code.google.com/p/chromium/issues/detail?id=361980 Commented Apr 18, 2015 at 23:19
  • @lemieuxster, thank you! The bug report totally explains this weird behavior. Perhaps you should add it as an answer to the question so that I can accept it? Commented Apr 18, 2015 at 23:37

2 Answers 2

3

Seems to maybe be an issue with Chrome? I don't see anything in Safari or Firefox. http://code.google.com/p/chromium/issues/detail?id=361980

Sign up to request clarification or add additional context in comments.

Comments

1

Maybe you would like to paste image as data:

Go look at HTML5 paste image to page

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.