Safari iOS7上的JavaScript confirm()

时间:2013-09-26 08:36:51

标签: javascript mobile-safari ios7

编辑:已在iOS7更新7.0.2中解决此问题。

我看到confirm()在iOS应用中崩溃Safari的问题,但在标准模式下没有看到任何关于它们的问题。以下代码来自W3schools示例,Safari只是继续执行confirm(),因此变量r始终为false。是一个模仿confirm()的自定义实现 - 功能仍然是唯一可行的解​​决方法吗?

<html>
    <head>
        <script>
        function disp_confirm() {
          var r = confirm('Press a button!');

          if (r == true) {
            alert('You pressed OK!');
          } else {
            alert('You pressed Cancel!');
          }
        }
        </script>
    </head>
    <body>
        <input type="button" onclick="disp_confirm()" value="Display a confirm box">
    </body>
</html>

2 个答案:

答案 0 :(得分:1)

在7.0.2和7.0.3中,对我来说,这个bug仍然存在

我偶尔可以通过关闭它重新开放来使Safari正常工作,但大部分时间它都不起作用。

答案 1 :(得分:0)

@ pkh80我发现Alertify.js帮助我解决了iOS7中有关提示,警报,确认等问题。 Here's the original post if it helps.

该线程上的另一位用户表示他能够通过设置超时来解决问题。也许尝试超时作为一个简单的开始,然后如果有必要尝试实现alertify,看看是否解决了它?