文本框如何判断是JS输入的还是手工输入的

2024-12-28 19:34:19
推荐回答(3个)
回答1:

手工输入很简单啊,只是你理解的钻牛角尖了

比如:
你可以用 xx.prorerty.onkeyup = function (){ //判断 }
或者 onkeydown //判断
这两个事件分别是,当输入前时和当输入完时,这样js不会触发key事件,只有键盘输入会触发

如果说百度的搜索框,他不是文本框的事件激活的查询,而是按钮的事件激活的查询。文本框激活的事件是寻找类似匹配的短语。而且当你选择下拉中的匹配短语时,焦点并没有落在文本框里,所以也不会触发文本框的事件

其实无所谓输入对象是谁,关键是你事件的安排,你再好好想想,你思路不太对

回答2:

你的意思不大明白,你既然js输入了,还要光标干什么,难道有情况是既要js输入又要手工输入。。那这样不是你还要判断第三种情况 就是既要js输入又有手工输入....
如果你要的结果只是js输入的时候就不允许有手工输入
手工输入的时候就不允许js输入的话
你可以再输入的时候锁定输入框,
js输入的时候输入框设为只读,
手工输入的恢复

回答3:

你的想法有问题,既然都能用js输入了,那你怎么就不能用js在js输入的时候判断呢???至于人工输入的话,用keyup判断就ok了