0

我有一个使用 web sql (html5) 的网站。它在 ios 6 中运行良好,但在升级到 ios 7.0.2 后它停止工作。没有代码更改。

var db = openDatabase(shortName, version, displayName, maxSize);
if(!db){alert("Failed to connect to database.");}

一切都很好,这意味着 safari 支持 html5 web sql db

db.transaction(function (transaction) {
transaction.executeSql("CREATE TABLE user_info (user_first_name TEXT, user_last_name TEXT)", null, null, TransactionError);

错误“1 未授权”

transaction.executeSql("INSERT INTO user_info (user_first_name, user_last_name) VALUES (?, ?)",[FirstName, LastName], _transactionCallBack, TransactionError);});

错误“1 没有这样的表 user_info”

我不明白 ios 7 升级期间发生了什么变化。感谢您的帮助。

4

2 回答 2

4

我想通了。当您进入 safari 时,键盘左上角的一个小按钮显示“私人”,单击它以禁用它。数据库将正常工作。但!jquery mobile 将无法使用后退按钮。为此,您必须从代码中删除 appcache。jquerymobile 1.4 将解决这个问题,但现在你将不得不在没有 appcache 的情况下生活!

于 2013-10-28T09:46:06.573 回答
1

这是 ios7 上的已知问题,如果您请求超过 5mb 的 dbsize,它将无法正常工作。详情可以参考这篇文章http://www.mobilexweb.com/blog/safari-ios7-html5-problems-apis-review

于 2013-10-20T23:20:30.317 回答