我正在为一个 iPhone OS 应用程序使用 jQTouch,我已经断断续续地玩了一段时间。我想尝试将其构建为 Web 应用程序,因此我开始使用 jQTouch。作为参考,这里是页面+源代码(我所有的代码目前都在,index.html
所以你可以“查看源代码”来查看全部):
http://rpj.me/doughapp.com/wd/
本质上,我正在尝试使用 data() 方法将从 Google Local 检索到的相关 JSON 对象保存到 DOM 对象中(在此示例中,obj
是 Google Local 对象):
$('#locPane').data('selected', obj);
然后稍后(在不同的“窗格”中),检索要使用的对象:
$('#locPane').bind('pageAnimationEnd', function(e, inf) {
var selobj = $(this).data('selected');
// use 'selobj' here ...
}
在桌面操作系统上的 Chromium 和 Safari(在我的例子中是雪豹)中,这非常有效(试试看)。
但是,上面第二个片段中undefined
的调用返回相同的代码。$(this).data('selected')
我也尝试过$('#' + e.target.id).data('selected')
,甚至是幼稚的$('#locPane').data('selected')
。所有变体undefined
都在 iPhone OS 版本的 WebKit 中返回,但不在桌面上。
有趣的是,在 iPhone 模拟器的 Mobile Safari 上运行它也失败了。
如果您查看完整源代码,您会发现我什至尝试将此对象保存到我的全局 jQTouch 对象(jqt
在我的代码中命名)。这在移动平台上也失败了。
有没有其他人遇到过这个?我承认我不是一个 web/javascript 程序员,所以如果我犯了白痴的错误,请告诉我。
预先感谢您的帮助!-RPJ
更新:我在原始帖子中没有说清楚,但如果它始终如一地工作,我愿意接受任何解决方法。由于我通常无法存储这些对象,因此现在任何可以让我保留它们的东西都足够了。谢谢!