Hola todos:
caricatos : estuve así de cerca de postear una respuesta para ese tema, pero me di cuenta justo a tiempo de que mi método sólo funcionaba bajo condiciones de laboratorio; en campo hay situaciones donde no sirve. Un papelón.
epplestun : ésto no será muy ortodoxo, pero si estás muuuy desesperado, es mejor que nada.
Código:
<html>
<head>
<script>
function poneCursor(){
cadena=formulario.texto.value.toString();
com=0;
pos=5; /*POSICIÓN DEL CURSOR*/
fin=cadena.length;
alfa=cadena.slice(com,pos);
zulu=cadena.slice(pos,fin);
formulario.texto.focus();
formulario.texto.value=alfa;
formulario.texto.select();
document.execCommand('copy');
formulario.texto.value=zulu;
formulario.texto.focus();
document.execCommand('paste');
}
</script>
<style>
</style>
</head>
<body>
<form name="formulario">
<input value="0123456789" id="texto" name="texto">
<br />
<input type="button" value="Cursor en caracter 5" onclick="poneCursor()">
</form>
</body>
</html>
Hay formas màs serias de hacerlo, p.e. con window.clipboardData , pero son para IE5.5 y aún hay mucha gente con la versión anterior.
El bug más grave se da en el caso de que alguien copie un texto y luego ubique el cursor para pegarlo en el INPUT, porque va a acordarse de todos tus ancestros al menos por tres generaciones; pero como ya dije, es una 'solución desesperada'.
saludos
furoya