cordova开发ios时候getScript函数无效的解决办法

转自cordova开发ios时候getScript函数无效的解决办法

在开发cordova程序的时候遇到一个需求, 就是想要利用jquerygetScript动态加载JavaScript.

代码如下:

$.getScript(root + "/js/other.js", function(response, status) {
    console.log(response, status);
});

问题是, 在浏览器环境browser中运行可以的, 在ios中却报错(android没有试过),找不到文件.

既然找不到文件, 就找到我们要的路径也就可以了.

可以通过window.location.href来获取.

  • 在browser中显示”http://localhost:8000/index.html“,

  • 在iOS显示”xxxx(记不住了, 反正不重要)/index.html”.

可以看出来得到的是包括index.html的路径.

我们需要的是父目录, 因为js文件在另外一个文件夹中.

代码如下:

var href = window.location.href;
var root = href.substr(0, href.length - 11); // 这里除去了'/index.html'

$.getScript(root + "/js/other.js", function(response, status) {
    console.log(response, status);
});

注意事项:

android环境没有尝试, 请自行测试.

你可能感兴趣的:(Cordova)