onkeydown事件里面写
如下,我简单写了一下:
<html><head>
<script type="text/javascript">
function whichButton(obj, event) {
var keycode = event.which || event.keyCode
//按下了right键
if (keycode == 39) {
//如果光标的位置到了6,则按键不生效
if (getCursorPosition(obj) >= 6) {
return false
}
}
}
//判断光标的索引
function getCursorPosition(obj) {
var cursurPosition = -1
if (obj.selectionStart) {
cursurPosition = obj.selectionStart
} else {
var range = document.selection.createRange()
range.moveStart("character", -obj.value.length)
cursurPosition = range.text.length
}
return cursurPosition
}
</script>
</head>
<body>
<input type='text' value='123456abcd' onkeydown="return whichButton(this,event)">
</body>
</html>
创建两个<table></table>第一个table里面只写前面的文字附带这些属性style=" float:leftText-align:rightborder:0”文字靠右对齐。第二个table里面只写后面的文本框,之后稍微调试就可以。完成之后很有可能遇到这个问题,纯文本的表高度小于输入框的高度,在第一个和第二个人table里面可以设置 height:‘具体高度’px属性。<script type="text/javascript">function rightchange(char,n)
{
return char.substr(char.length-n)+char.substr(0,char.length-n-1)
}
//演示用
alert(rightchange("abcdefg",2))
</script>