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

标签 javascript iphone safari mobile-safari

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

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

最佳答案

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

<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 页面并将其加载到 Mobile Safari 中,然后将您的手机调成横向 View ,然后单击链接,您希望发生什么?您期望发生的是使用宽键盘横向出现提示对话框。实际发生的是 Mobile Safari 旋转回纵向 View 并弹出小键盘,然后在您输入文本后旋转回来。 (为了好玩,提醒结果,提醒也会旋转显示...)请注意,HTML 5 自定义(type="tel"或 pattern="[0-9]*")会在适当的时候正确弹出横向键盘。

请注意,这不是您无法自定义键盘外观的先验证据,但它是一个非常有力的指标,表明 javascript 提示行为是固定的并且没有很好地集成到其他用户体验中。

关于javascript - 在 iPhone 上使用 Mobile Safari 时,是否可以在使用 prompt() Javascript 函数时更改键盘类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1677503/

相关文章:

javascript - 使用 javascript 禁用 a 标签(链接)

javascript - 需要让jquery将css添加到通过ajax添加的表中

java - Java Web Start 和 Safari 的问题

javascript - Angular 2 : call component method from javascript function

javascript - 我无法迭代从 firestore 获取的数据并将其移入数组

iphone - UItextView 阿拉伯文本右对齐

iphone - 如何仅在 DEBUG 和 AdHoc 模式下执行特定功能

iphone - 将解析字符串显示为标签问题

html - Safari 中的一行中有 2 个 div [错误]

iphone - 是否可以从 iPhone safari 浏览器获取 UDID?