根据input的type格式,有些手机会弹出不同的键盘
例如如果type为number,手机可能会弹出数字键盘
不会做手机的,做了个电脑上能用的...<script>
function demo(obj,tip){
if(tip==1){
var con=document.getElementById('content').value
document.getElementById('content').value=con+obj.innerHTML
}else if(tip==2){
document.getElementById('content').value=""
}else if(tip==3){
var con=document.getElementById('content').value
document.getElementById('content').value=con.slice(0,-1)
}
}
</script>
<button onclick="demo(this,1)">7</button>
<button onclick="demo(this,1)">8</button>
<button onclick="demo(this,1)">9</button>
<br>
<button onclick="demo(this,1)">4</button>
<button onclick="demo(this,1)">5</button>
<button onclick="demo(this,1)">6</button>
<br>
<button onclick="demo(this,1)">1</button>
<button onclick="demo(this,1)">2</button>
<button onclick="demo(this,1)">3</button>
<br>
<button onclick="demo(this,2)">C</button>
<button onclick="demo(this,1)">0</button>
<button onclick="demo(this,3)">X</button>
<br>
<input type="text" id="content" />
先说问题吧,问题在于你每次点击input时候都给数字键盘绑定了click事件,这就导致在点击第二个input输入时,数字键盘已经绑定了2个click事件了,第一个input当然会输入了,解决方法就是在给数字键盘绑定click方法的时候取消前面的所有绑定