Estou tentando alterar o valor de um campo de texto, que siga o padrão de uma expressão regular, isso está fazendo porém gostaria que quando atingisse o limite do campo o cursor o acompanhasse, este problema ocorre somente no firefox. Tenho o seguinte código para que estou fazendo para teste:
<html>
<head>
<title>Testando Posições Inputs JavaScript</title>
<style type="text/css">
.maisculo {
text-transform: uppercase !important;
}
</style>
<script type="text/javascript">
function upperCase(id) {
var element = document.getElementById(id);
var text = element.value;
text = text.replace(new RegExp('[ÁÀÂÃ]','gi'), 'A');
text = text.replace(new RegExp('[ÉÈÊ]','gi'), 'E');
text = text.replace(new RegExp('[ÍÌÎ]','gi'), 'I');
text = text.replace(new RegExp('[ÓÒÔÕ]','gi'), 'O');
text = text.replace(new RegExp('[ÚÙÛ]','gi'), 'U');
text = text.replace(new RegExp('[Ç]','gi'), 'C');
text = text.replace(new RegExp('[^a-zA-Z0-9 ]+'), '');
element.value = text.toUpperCase();
}
</script>
</head>
<body>
<input type="text"
id="texto"
name="texto"
style="width: 400px;"
class="maisculo"
onkeyup="upperCase(this.id)"/>
</body>
</html>
Agradeço desde já a qualquer ajuda que possa vir.
[]'s