Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Chrome Security从本地文件系统加载jQuery移动页面时出错_Javascript_Jquery_Google Chrome_Jquery Mobile - Fatal编程技术网

Javascript Chrome Security从本地文件系统加载jQuery移动页面时出错

Javascript Chrome Security从本地文件系统加载jQuery移动页面时出错,javascript,jquery,google-chrome,jquery-mobile,Javascript,Jquery,Google Chrome,Jquery Mobile,当加载带有jQuery Mobile引用的简单html文件时,我在Chrome中遇到以下错误。仅jQuery引用不存在错误 未捕获的安全性错误:未能对“历史记录”执行“replaceState”: 无法创建URL为“”的历史状态对象 无法在源代码为“null”的文档中创建 临时解决方案:我已经注释掉了所有历史记录。jquery mobile中的replaceState调用,无论如何都不需要在我的应用程序中操纵浏览器历史记录 我想知道这是否是chrome的安全漏洞或模型以及未来的行为。此错误与来

当加载带有jQuery Mobile引用的简单html文件时,我在Chrome中遇到以下错误。仅jQuery引用不存在错误

未捕获的安全性错误:未能对“历史记录”执行“replaceState”: 无法创建URL为“”的历史状态对象 无法在源代码为“null”的文档中创建


临时解决方案:我已经注释掉了所有
历史记录。jquery mobile中的replaceState
调用,无论如何都不需要在我的应用程序中操纵浏览器历史记录


我想知道这是否是chrome的安全漏洞或模型以及未来的行为。

此错误与来源为空的错误相同。发生此错误是因为Chrome的安全功能。 测试应用程序的一个简单解决方案是绕过chrome上的这种安全性

步骤:

  • 在桌面上创建chrome浏览器快捷方式
  • 关闭计算机上的所有chrome实例
  • 右键单击chrome的桌面快捷方式,然后单击属性
  • 在目标字段的末尾附加“-允许从文件访问文件”
  • 保存并关闭属性
  • 仅通过此快捷方式打开chrome
  • 快点,错误已经过去了。该应用程序运行完美


    注意:这只是我用来在桌面浏览器上测试cordova应用程序以进行UI测试的一种变通方法。

    在Mac上,我可以通过运行Web服务器而不是从“文件:/”url加载来解决此问题:


    在该目录中,应该通过0.0.0.0从Chrome获得它,我似乎没有同样的问题,在Chrome的稳定版本(45)或开发版本(47)上没有


    然而,我个人也看到了CORS标题的问题。如果您能够可靠地解决问题,我建议您在上提交一个bug,Chrome开发人员将对此进行检查。

    是的,我也有同样的想法,但我对更改代码持谨慎态度,尤其是在以后必须更新jQuery Mobile时。我想我可以向他们的小组提交一个功能请求,或者用一个黑客版本凑合一下。目前,我正在为dev使用web服务器。@t2n:不要修改核心jqm。请参考我的答案。只需在导入jqm之前添加一个脚本,它就可以工作!!如果JQM在运行之前检查一下就好了。是的,我在其他关于这个问题的讨论中看到过这个标志,但它并没有真正回答我的问题,为什么Chrome有一天开始产生错误,而它以前工作过。什么是“桌面浏览器”?@raduation browser for desktop OS,它是专为在台式计算机上运行(非独占)而设计的操作系统(将在笔记本电脑和其他一些兼容设备上运行)。与“手机浏览器”或“手机浏览器”等不同,是的,它在web服务器上运行良好。问题是为什么它不能在从本地文件系统加载的Chrome中工作。我同意,但当我在谷歌上搜索这个问题时,我想要一个快速而肮脏的解决方案,发现了这个问题,实际上没有任何有用的信息。希望它能帮助别人谢谢你的建议!可能重复的
    python -m SimpleHTTPServer 8000