老张小站

  1. 欢迎光临

    感谢访问老张的博客!

  • 1
800

Discuz! X3.* 消息页面中输入收件人时输入框失去焦点的解决办法

分类 网站技术/村民张先生 发布于 2020-01-03 04:16
0

在 home.php?mod=spacecp&ac=pm 消息页面中,输入收件人时会自动检索好友,例如输入s,如果有用户名为s开头的好友时,就会弹出一个提示框供点选,此时光标离开输入框,无法继续输入!

在 static/js/home_friendselector.js 中,未找到故意使输入框失去焦点的代码,发现提示框使用Discuz的showMenu函数弹出提示框:

							showMenu({'showid':this.showObj.id, 'duration':3, 'pos':'43'});
							showMenu({'showid':this.handleObj.id, 'duration':3, 'pos':'43'});

这个过程似乎不可避免地使光标离开输入框,打断了输入。我尝试在其后方添加:

							$('username').focus();

使提示框出现后自动让焦点再次回到输入框。经测试,输入英文用户名时不会再被打断了。

但输入中文时,焦点离开会造成输入法关闭,无法继续输入中文!所以最后结果是这个问题未能解决,只能先将showMenu两行代码注释掉,关闭提示功能。

欢迎转载分享,转载请注明 来源:大张小站 https://www.zhang.cq.cn/20202250.html
若您喜欢这篇文章,欢迎订阅老张小站以获得最新内容。 / 欢迎交流探讨,请发电子邮件至 mail[at]vdazhang.com 。


欢迎谈谈你的看法(无须登录) *正文中请勿包含"http://"否则将被拦截