2009-10-21 43 views
12

Tengo la caja de entrada. Cuando carga la página, uso el mouse para hacer clic con el botón derecho sobre la casilla de entrada y elegir pegar desde el menú contextual.detectar pegar en el cuadro de entrada

cuando se pega el texto, ¿qué evento utilizar para alertar el texto instantáneamente tan pronto como se produzca?

i uso "pasta de entrada", pero no funciona en IE

Respuesta

-5

Se creó una acción con setInterval (javascript función), que comprueba cada 200 ms el contenido de entrada. Si se cambia, entonces ocurrió el pasado o tipeo.

44

Puede enlazar estos eventos, así:

$(document).ready(function() { 
     $("#Text1").bind('copy', function(e) { 
      alert('copying text!'); 
     }); 
     $("#Text1").bind('paste', function(e) { 
      alert('pasting text!'); 
     }); 
     $("#Text1").bind('cut', function(e) { 
      alert('cut text!'); 
     }); 
    }); 
+1

+1 yo era demasiado lento. – Tester101

+1

Me encantaría saber cuáles fueron las razones de los votantes a la baja. Gracias. – Buggabill

+0

Gracias Buggabill! esto me ayudó en un proyecto en el que estoy trabajando actualmente. – blackhawk

-1

Un truco que funciona la mayor parte del tiempo sería para enganchar en el control de onchange mientras que también almacenar texto inicial del control en una variable independiente. Cada vez que la longitud del nuevo texto es más larga que el texto original en más de un carácter, puede suponer que se ha pegado algo. Obviamente, esto no funcionaría si alguien pega una cadena de un carácter, pero las personas no lo hacen. haz eso muy seguido

+14

¡Qué idea tan horrible! Es una maldita cosa buena que ya no hagas mucho trabajo en la web. – MusiGenesis

+2

¿Acabas de llamar a tu propia respuesta una idea horrible? –

+3

@KasperSkov: bueno, hace cuatro años no es exactamente "solo". – MusiGenesis

Cuestiones relacionadas