有办法的,只是绑定了整个页面后,需要针对输入框,解除冒泡响应,否则页面点击任何地方(包括输入框)页面焦点将永远指向第一个输入框。
代码如下(测试成功):
<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>
纯手打,望采纳。
本文实例讲述了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程序设计有所帮助。