cordova.js的坑

最近在使用cordova开发app,一开始只引用了cordova.js,cordova通过function exec(){}来链接本地和H5,之前代码被下载到了本地,在苹果和android上都能实现功能,可是有一天突然要放到远程上,本来以为没事,放就放呗,我H5写的页面还怕不成,可是问题来了,在android上可以正常实现,可是在ios上只出来了静态页面,一点加载的东西都没有.后来换了ios加载的cordova,这下在ios上没事,在android什么都没有,这下明白了,敢情cordova.js不是通用的啊!还得先判断机型,然后在引不同的js文件.方法如下:

var head = document.getElementsByTagName('head')[0];

var script = document.createElement('script');

var oScript = document.createElement('script');

script.type = 'text/javascript';

oScript.type = 'text/javascript';

script.src = 'http://xhtml5.duapp.com/cordova_plugins.js';

var u = navigator.userAgent;

if (u.indexOf('Android') > -1 || u.indexOf('Linux') > -1) {//android手机

    oScript.src = 'http://xhtml5.duapp.com/cordova.js';

    head.appendChild(oScript);

    head.appendChild(script);

} else if (u.indexOf('iPhone') > -1) {//苹果手机

    oScript.src = 'http://xhtml5.duapp.com/cordova_ios.js';

    head.appendChild(oScript);

}

;写了这段代码之后,再运行,果然在ios和android上都能实现功能!

posted @ 2016-01-19 19:51  大兵008  阅读(1810)  评论(0编辑  收藏  举报