首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在webOS上使用jQTouch和PhoneGap

在webOS上使用jQTouch和PhoneGap
EN

Stack Overflow用户
提问于 2010-06-11 07:17:40
回答 2查看 1.5K关注 0票数 1

我正在用PhoneGap编写一个我想要在iOS、安卓和webOS上运行的应用程序。jQTouch在iOS和安卓系统上的表现都很好,但webOS并非如此。

由于webOS Mojo框架is based on Prototype (使用$变量),因此有必要在noConflict模式下使用jQuery。我能应付这么多。

然而,问题是我也想使用jQTouch插件。jqtouch.js文件始终使用$,因此在加载该文件时会导致JavaScript错误。

有没有一种方法可以在我的PhoneGap应用程序中运行jQTouch插件(或其他插件)而不影响原型?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-06-11 07:50:24

您应该能够将其包装在闭包中并传入jQuery。例如:

代码语言:javascript
代码运行次数:0
运行
复制
(function($){
   alert($);
}("Hello"))

(function($){
   $("foo"); // uses the jQuery rather than $
}(jQuery))
票数 6
EN

Stack Overflow用户

发布于 2011-01-02 23:06:38

实际上,你可以去掉prototyper,这样就没有冲突了。阅读他们的编程指南中的一篇文章:

Mojo是构建大多数webOS应用程序所使用的标准JavaScript框架。然而,如果你没有使用其中的任何功能,那么它只会耗费你的启动时间。只需注释掉index.html页面顶部的脚本标记,就可以防止加载Mojo。

--> Mojo做了一件我们需要做的事情。当应用程序完全加载并准备就绪时,它会通知窗口管理器。我们可以使用一个简单的onLoad事件处理程序手动完成此操作。将以下脚本添加到index.html页面的头部:

代码语言:javascript
代码运行次数:0
运行
复制
function onLoad() {     if (window.PalmSystem) {         window.PalmSystem.stageReady();     } }   

然后在body的onload事件中添加一个调用。

就这样!现在,应用程序将在没有Mojo的情况下加载,并且启动速度更快。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3019216

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档