防止<text区域>避免失去焦点以保持移动键盘
Prevent <textarea> from losing focus to keep mobile keypad
我正在开发一款网络应用程序,该应用程序需要在聊天功能方面与移动设备兼容。目前,当你用<textarea>
点击屏幕区域时,会弹出一些以前没有的额外按钮(以节省屏幕空间)。这些按钮是可用的,但目前的情况是,当你点击它们时,<textarea>
意识到它不再是焦点,因此移动键盘消失了。这创造了一种整体的跳跃体验。
有人能想出一个JS解决方案来解决这个问题吗?
伪编程解决方案:
function buttonClick
do stuff...
restore focus to textarea
事实上,仅此而已。
因此,JS的解决方案是:
function buttonClickHandler(){
// do button stuff...
document.getElementById('myTextarea').focus();
}
假设:
buttonClickHandler
是按钮的onclick事件功能myTextarea
是文本区域的id
使用jQuery,您可以执行以下操作:
$('textarea')
.focus() // set initial focus
.on('blur', function () { // on blur
$(this).focus(); // return focus
});
演示:https://jsfiddle.net/v6do2utk/1/
相关文章:
- 将焦点移动到页面元素
- 强制单击空链接以不移动页面焦点
- 使用jQuery在焦点上选择文本框是't在移动浏览器中工作
- 将插入符号移动到焦点上文本区域的末尾
- 如果用户不更改该选项,请将焦点移动到下一个字段
- 使用 javascript 或 jquery 将页面的焦点移动到单击的元素上
- 防止<text区域>避免失去焦点以保持移动键盘
- 如何将光标移动到所见即所得框的末尾并设置焦点
- 如何仅在移动设备上消除输入的焦点
- 固定位置分割防止焦点在元素之间移动时滚动
- JavaScript将焦点放在元素/标记上,并使用光标键四处移动
- HTML:如何防止焦点从元素移动
- D3,当上下文发生变化时,第二焦点不会移动
- 手动移动焦点时Combo不会模糊
- 如何滚动到底部或移动焦点到底部的角度
- 是否有一种方法可以通过编程触发TAB键将焦点移动到下一个可聚焦的元素
- 在GOJS中的MouseDrop事件后将焦点移动到文本框
- 如何避免将焦点移动到Chrome扩展中的谷歌搜索栏
- 如何在Opera中将焦点移动到子窗口
- 在asp.net中输入Key作为Tab并将焦点移动到下一个控件