How to alert after paste event in Javascript?
dom-events, javascript
Solution
You could put your alert in a `setTimeout`.
setTimeout(function() {alert('Pasted');}, 0);
This will delay the code until after the value has updated.
Just keep in mind that `this` in the `setTimeout` callback will have a different value than that in the enclosing environment.
If you'll need a reference to the outer `this`, which will be the element, then reference it in a variable...
var self = this;
setTimeout(function() {alert(self.value);}, 0);
Or use `.bind()` (Supported in most browsers that support `addEventListener`. Older Safari didn't support it.)...
setTimeout(function() {alert(this.value);}.bind(this), 0);
Problem
I have a simple past event as ``` document.getElementById('paste_area').addEventListener('paste', function() { document.getElementById('notice').innerHTML='Text was successfully pasted!'; alert('Pasted'); }, true); ``` A working example can be found here http://jsfiddle.net/XEQzz/ The alert and notice will appear before pasting. How can I delay the alert action to happen after paste event has been actually completed?