【问题标题】:Jquery load() only working in firefox?Jquery load() 仅在 Firefox 中工作?
【发布时间】:2016-01-04 21:46:53
【问题描述】:

我正在尝试进入 jquery/ajax,但我什至无法相信我无法通过第一次测试。我正在关注我在The Jquery API site 找到的一个示例,然后我将其追踪到了一个 T。

我在桌面上创建了一个本地文件夹,并添加了2个文件。

index.html

list1.html.


索引.html:

<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
</head>

<body>

<div id="stage">
</div>

<script>
$( "#stage" ).load( "list1.html" );
</script>

</body>

</html>

list1.html

<div id="list">
<li>Test</li>
<li>Foo</li>
<li>Bar</li>
</div>

我尝试在 chrome 中运行 index.html 大约 15 分钟,但没有显示任何内容(例如 jquery 未正确加载)。出于纯粹的好奇,我用firefox打开它,它按预期显示......像这样的

  • 测试
  • 酒吧

这是浏览器的问题吗?为什么 Chrome 和 IE 不显示这个加载列表,但 firefox 显示?我不知道是我的代码还是环境在尝试学习时令人愤怒。

【问题讨论】:

  • 尝试将加载代码封装在$(document.ready) 中。可能是在您尝试运行该函数时未加载 jQuery。
  • 你知道 jQuery 没有正确加载吗?您是否检查了 chrome 开发工具控制台和网络选项卡?它加载对我来说很好......
  • 是的,@PeteTalksWeb 由于出现错误“跨源请求仅支持协议方案:http、data、chrome、chrome-extension、https、chrome-extension-resource,因此无法加载。” .或者换句话说,chrome 不喜欢打开机器本地的文件。我想知道为什么它会为你打开......
  • 我在本地服务器上运行我的。所以它在localhost,而不是文件目录。

标签: javascript jquery html google-chrome cross-browser


【解决方案1】:

尝试启动带有 --allow-file-access-from-files 标志的 chrome / chromium

How do I make the Google Chrome flag "--allow-file-access-from-files" permanent?

【讨论】:

  • 这可以作为 Chrome 的解决方案......现在我将只进行所有本地测试并在 Firefox 中播放!轻松多了哈哈
【解决方案2】:

试试

<script>
    $(function(){
       $("#stage").load("list1.html");
    });
</script>

如果仍然无法正常工作,请检查浏览器开发者工具中的网络部分,看看是否有任何 HTTP 或安全错误。

【讨论】:

  • 是的!谢谢...问题不是 Jquery 函数,而是 chrome 阻止了 xml 请求,因为它来自本地目录!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-02-12
  • 1970-01-01
  • 2011-03-13
  • 2011-11-01
  • 1970-01-01
相关资源
最近更新 更多