js怎么控制焦点在文本框中的位置

JavaScript07

js怎么控制焦点在文本框中的位置,第1张

var index = 2// 焦点在文本中的位置

var esrc = document.getElementById("text1")

var rtextrange = esrc.createTextRange()

rtextrange.moveStart('character', index)

rtextrange.collapse(true)

rtextrange.select()

本文实例讲述了JS实现密码框根据焦点的获取与失去控制文字的消失与显示效果。分享给大家供大家参考,具体如下:

思路:

1、首先用把密码框用txt暂时替代,并赋上默认值

<input

type="text"

value="请输入密码"

/>

2、当文本框获取焦点后,把默认值清空,把type改为password。

3、当文本框失去焦点后,把type改为txt,把默认值设为“请输入密码”。

JS代码:

window.onload=function(){

var

input=document.getElementById('input')

input.onfocus=function(){

if(this.value=='请输入密码'){

this.value=''

this.type='password'

}

}

input.onblur=function(){

if(!this.value){

this.type

=

'text'

this.value

=

'请输入密码'

}

}

}

HTML代码:

复制代码

代码如下:

<input

type="text"

value="请输入密码"

id="input"

/>

希望本文所述对大家JavaScript程序设计有所帮助。

有办法的,只是绑定了整个页面后,需要针对输入框,解除冒泡响应,否则页面点击任何地方(包括输入框)页面焦点将永远指向第一个输入框。

代码如下(测试成功):

<html>

<body>

    <input class="int" type="text" />

    <input class="int" type="text" />

    <input class="int" type="text" />

    <input class="int" type="text" />

</body>

<script>

    //获取对象

    var page = document.documentElement

    var int = document.querySelectorAll('.int')

    

    //初始化获得第一个焦点

    int[0].focus()

    

    //规定点击页面任何位置都会将焦点给予第一个输入框

    page.onclick = function(){

        int[0].focus()

    }

    

    //规定点击4个输入框时例外(不会跳转到第一个输入框)

    for(var i=0 i<int.length i++){

        int[i].onclick = function(e){

            //阻止冒泡[重点!]

            var e = window.event || e

            if(document.all){

                e.cancelBubble = true

            }else{

                e.stopPropagation()

            }

        }

    }

</script>

</html>

纯手打,望采纳。