【问题标题】:How to handle the resize event and the iPad keyboard in browser application?如何处理浏览器应用程序中的调整大小事件和 iPad 键盘?
【发布时间】:2013-05-22 08:35:42
【问题描述】:

我使用内置于 javascript/jQuery 的浏览器应用程序,当按下某个按钮时会打开一个弹出框/对话框。弹出框与该按钮对齐。如果我们调整浏览器窗口的大小,我们希望弹出框关闭,所以我们监听 resize 事件并关闭弹出框。但问题是当我们在 iPad 的浏览器中访问应用程序时。如果我们在弹出框内的某个输入字段中输入内容,然后通过按下“隐藏键盘”按钮选择隐藏键盘,则会发生调整大小事件并关闭弹出框。我们不希望它在这种情况下关闭。

有人知道我们如何解决这个问题吗?我们可以捕捉到键盘是关闭的吗?我只发现应用程序中使用的通知,而不是浏览器网站。或者我们可以在调整浏览器窗口大小时监听另一个事件来关闭弹出框吗?

【问题讨论】:

  • 你能分享一些代码吗?

标签: javascript jquery ipad keyboard-events


【解决方案1】:

您可以为您的项目尝试此解决方案。

$(window).bind('orientationchange', function(event) {
  if (window.orientation == 90 || window.orientation == -90 || window.orientation == 270) {
    // When orientation is 90 / -90 / 270 degrees
  } else {
    // When orientation is other degrees
  }
});

您也可以在下面查看这些链接。

jQuery .ready/resize does not work on iPad

how to resize / rezoom webpage in ipad

【讨论】:

    【解决方案2】:

    您可以使用 gesturechange 事件,然后测试是否触发该事件,因为在某些特殊情况下听起来需要忽略它。

     $.bind("gesturechange", function(event) {
         // event.originalEvent.scale;
     });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-09-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-16
      • 1970-01-01
      • 1970-01-01
      • 2012-07-11
      相关资源
      最近更新 更多