javascript - 在 IOS Safari 中禁用选择选项

标签 javascript ios mobile-safari

我实现了一个表单,需要使用 Javascript 禁用选择框中的某些选项。它在所有浏览器中都能正常工作,但在 IOS 上的 Safari 中却不行(Desktop Safari 就可以)。

我一直在网上四处寻找,但到目前为止似乎还没有人遇到过这个问题,所以我不确定这是 Safari IOS 的限制还是我忽略的问题。

感谢您的帮助, 米格尔

最佳答案

在为 iOS 开发时,别无选择,只能删除禁用的选项。

对于 iPhone,图片非常清晰:所有选择列表在所有情况下都被设计为点击轮,并且这些轮不接受禁用的选项。这显示在 iPhone 模拟器和实际 iPhone 上。

对于 iPad,图片更困惑。 iPad 模拟器确实会将禁用的选项变灰并真正使它们禁用,就像移动版 Safari 和桌面版 Safari 所做的那样。但是 实际 iPad(在我的例子中是 iPad 1,运行 iOS 4.2.1)会显示点击轮。

所以尽早在你的脚本中做这样的事情:

// check for ios device
nP = navigator.platform;      
if (nP == "iPad" || nP == "iPhone" || nP == "iPod" || nP == "iPhone Simulator" || nP == "iPad Simulator"){
    $('select option[disabled]').remove();
}

关于javascript - 在 IOS Safari 中禁用选择选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6109085/

相关文章:

javascript - 通过socket检测网络断开

javascript - 如何在 express 中使用 THIS?

javascript:在客户端存储字符串?

ios - 当用户将应用程序从 watch OS1 升级到 watch OS2 时,我的 Watch OS2 应用程序未显示在 iPhone 的 'My Watch' 应用程序中

iOS Safari 显示已安装的应用程序。这是如何运作的?元标签?

javascript - 从另一个数组超链接数组中的图像

iOS 标签文本随 sleep() 改变

ios - 如何在 Restkit 中设置 header 值

javascript - 为什么在水平方向时 window.innerHeight 返回 180 ?

iPhone HE-AAC 通过移动网络 (3G) 进行流媒体播放