jQuery的getScript和本地文件系统 - 限制/替代?

use*_*099 4 javascript jquery

现在我正在开发一个基于本地文件系统的帮助系统.它的目的是附带一个不在支持互联网的机器上使用的产品,因此它必须是一个独立的网页,不依赖于Web服务器.

这引入了一些挑战.也就是说,文件所在的目录结构需要"向上和向上"导航以访问显示帮助系统所需的某些.js文件.这个用法是使用jQuery getScript函数实现的,但我在本地文件系统上遇到了一些问题.

乍一看,似乎我的网页是在C:/ dev/webpage/html /目录下提供的,而我需要的文件是在C:/ dev/webpage/js /(topic)/file.js ,我可以构建一个绝对路径(file:/// ...)并将其传递给getScript函数.

但是,在测试之后,似乎getScript函数似乎不允许我从html目录(其中html文件所在的具有网页主代码的位置)上升到一个级别.不幸的是,我无法更改目录结构,也无法更改.js文件结构/格式.

是否有一种替代方法可以加载/执行文件结构中需要"反复"的javascript文件?

谢谢,

编辑 - 我确实看过这个类似于我的问题,但在我的情况下,将数据更改为JSON格式的建议不是一个选项:在本地文件上使用Javascript/jQuery拒绝权限

Nic*_*ver 6

并不是说它不会让你上升到某个水平......在某些情况下也是如此,这可能是因为你可能为了安全而采用同源政策.这里有一些解决方案/选项.

选项1

您最好的长期选择是在盒子上设置Web服务器,编辑/保存文件,但通过http://localhostURL 查看.如果您正在进行大量的HTML/CSS/JS工作,这将是获得您想要的最简单方法.

选项2

或者,您可以在chrome(可能是其他浏览器)中加载页面并禁用该策略,这样您就可以完成一些工作(为开发创建不同的快捷方式,而不是一般用途!).

对于Chrome,您可以通过编辑快捷方式并添加--disable-web-security到命令行来禁用它,例如:

C:\Users\USERHERE\AppData\Local\Google\Chrome\Application\chrome.exe --disable-web-security
Run Code Online (Sandbox Code Playgroud)