b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

解决方法:完全解决了移动网页中输入框被输入法阻塞的问题

电脑杂谈  发布时间:2020-09-23 05:05:07  来源:网络整理

input框不能输入_输入法的框不见了win7_旺旺输入法挡住对话框

完全解决了移动网页中输入框输入法阻塞的问题

更新时间:2017年12月19日14:37:51作者:小魔仙酷

下面的编辑器将分享一篇文章,该文章完全解决了移动网页中的输入框被输入法阻塞的问题。它具有很好的参考价值,希望对大家有所帮助。让我们跟随编辑器看看

输入法的框不见了win7_input框不能输入_旺旺输入法挡住对话框

在执行弹出对话框之前,填写信息,然后发现在手机上查看信息时,在后面的输入框中填写信息时,输入框已被输入法阻塞,并且只能盲目填写。

前提

1.弹出对话框的显示位置为:固定

旺旺输入法挡住对话框_输入法的框不见了win7_input框不能输入

2.对话框大小是固定的

解决方案

css部分

(dlg-top和dlg-bottom是对话框类,用于确定对话框的定位方法)

.dlg-top{
 position: fixed;
 top:100px;
 left:10%;
}
.dlg-bottom{
 position: fixed;
 bottom:0px;
 left:10%;
}

js部分

“ deliver-dlg”是对话框的类

//弹出对话框时,绑定的事件
//绑定输入框获取焦点事件
$(".deliver-dlg input,.deliver-dlg textarea").focus(function(){
 var input=$(this);
 //在输入框获取焦点后,窗口改变的话,执行事件
 $(window).resize(function(){
  //判断当前输入框是否在可视窗口之外(下面)
  if($(window).height()-(input.offset().top+input.offset().height-document.body.scrollTop)<0){
   //对话框定位方式改为bottom
   $(".deliver-dlg").removeClass("dlg-top").addClass("dlg-bottom");
  }
  else{
   $(".deliver-dlg").removeClass("dlg-bottom").addClass("dlg-top");
  }
 });
});
//取消对话框时,取消事件绑定
$(".deliver-dlg input").unbind();
$(".deliver-dlg").removeClass("dlg-bottom").addClass("dlg-top");
$(window).unbind();

思想分析

简单地说,就是更改对话框的定位方法。默认情况下,使用top。有输入法时,根据情况使用底部。当输入获得焦点并且窗口重置时(即输入框弹出),请注意首先绑定输入的焦点事件,然后绑定窗口更改事件,因为在手机上,输入获取焦点,并弹出输入框,导致窗口大小更改。

在发生窗口大小更改事件之后,确定输入框是否被覆盖(即不在窗口的可见范围内)。使用的方法是使用可见窗口的高度($(window).height())大于输入框的底部(input.offset()。top + input.offset()。height-document。 body.scrollTop),因为input.offset()。top表示元素从文档开头开始的位置。可视窗口头部的位置可以减去滚动条滚动了多少。上面是确定该元素是否在可见窗口的底部。

以上文章完美地解决了移动网页上的输入框被输入法所阻塞,即编辑器共享的所有内容的问题,希望为您提供参考,并希望可以支持Scripthome。


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/shumachanpin/article-321282-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      • 东风
        东风

        我官网买的米2差不多充满两次是可以的

      • 陈废帝陈伯宗
        陈废帝陈伯宗

        看来可以做的更好的

      • 王贝贝
        王贝贝

        我当击沉之

      每日福利
      热点图片
      拼命载入中...