pageinit在Linux桌面浏览器上不存在

时间:2014-01-06 10:11:49

标签: jquery linux jquery-mobile page-init

我最近开发了一个带有jquery的web应用程序,现在需要在移动设备上使用(特别是ipad)。我现在将jquery mobile添加到混合中,并将click替换为tap,这解决了几个问题。我进一步继续将ready更改为pageinit - 但这是我遇到障碍的地方。

旧的jquery代码是:

$(document).ready(function() { ... });

这在桌面上运行良好,但在移动设备上有一些问题。我改变了

$(document).pageinit(function() { ... });

这在我的一台开发机器(OS X)和移动设备上运行良好。但是在我的其他开发机器(Ubuntu)上,我收到了错误消息function pageinit does not exist。然后我将其改为“正确”方式:

$(document).on('pageinit', function() { ... });

这不起作用,因为函数永远不会被调用。我怀疑这是因为onpageinit事件不存在或类似的事情。我进一步尝试了pageshowpagecreate等 - 结果相同。 Firefox和Chrome也有相同的结果。

那么,我在这里错过了什么?我现在在我的代码中添加了类似的内容:

$doc = $(document);
func = $doc.pageinit ? $doc.pageinit : $doc.ready;
func(function() { ... });

这使它适用于OS X,Ubuntu和iPad,但这感觉/看起来很难看。还有其他建议吗?

0 个答案:

没有答案