代码之家  ›  专栏  ›  技术社区  ›  Gabe Hollombe

在iPhone上使用Mobile Safari时,是否可以在使用prompt()javascript函数时更改键盘类型?

  •  5
  • Gabe Hollombe  · 技术社区  · 15 年前

    iPhone上的Mobile Safari允许您为文本输入框指定不同的键盘类型,如 Safari How-To's for iPhone, here . 但是,我想知道是否可以在显示javascript prompt()对话框时更改显示的键盘类型。

    我知道如果有必要,我可以滚动我自己的模式弹出窗口,但是我想知道是否可以使用内置prompt()函数和不同的键盘(在我的例子中是数字)。

    有什么想法吗?

    1 回复  |  直到 15 年前
        1
  •  4
  •   ddoughty    15 年前

    我很确定答案是,不幸的是,“不”。考虑以下实验:

    <html>
    <head>
     <script type="text/javascript">
       function doit() {
         prompt("this is a test");
       }
     </script>
    </head>
    <body>
     <a href="javascript:doit();">Click me</a>
    </body>
    </html>
    

    如果你把它放进一个HTML页面并载入MobileSafari,然后把你的手机变成横向视图,然后点击链接,你期望会发生什么?您希望发生的是提示对话框以横向方式出现,并使用宽键盘。实际发生的是,MobileSafari会旋转回纵向视图,弹出小键盘,然后在输入文本后旋转回来。(有趣的是,提醒结果,提醒也会旋转显示…)请注意,HTML 5自定义设置(type=“tel”或pattern=“[0-9]*”)会在适当时正确弹出横向键盘。

    注意这不是 先验的 证明你 不能 自定义键盘的外观,但这是一个很强的指标,表明javascript提示行为是栓接的,并没有很好地集成到其他用户体验中。