我正在一个页面上实现 Bing 地图(我更喜欢谷歌地图,但这不是我的选择)。我正在关注 MS 在此处提供的教程:http: //msdn.microsoft.com/en-us/library/bb412551.aspx
使用 MS 的代码,一切正常。用我自己的一些 jQuery 代码充实它,我发现每次运行 $.get(); 时都会收到“Permission Denied”错误。我认为这是某种“同源”冲突,但经过多次检查,我确定我没有向任何其他主机请求任何内容(甚至不是 www.example.com 与 example.com - 一切都在同一主持人)。
经过一番挫折,我终于将原因归结为 MS 代码中的 META 标签:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
这是在我的 HEAD 部分的底部。在阅读规范时。对于 META 标签(我不是很熟悉),我发现一些服务器可能会将 http-equiv 标签直接转换为 HTTP 标头,而其他服务器可能只是按原样发送它们。因为我相信标题必须在任何内容之前发送,我将 META 标签移到了 HEAD 部分的 BEGINING,一切正常。
另一个细节:我只在 IE7 中遇到了问题。当我在FF中测试时,我完全没有问题。
所以这是我的问题:具有 http-equiv 属性的 META 标签是否应该位于 HEAD 部分的开头?IE只是很奇怪吗?还是 FF 只是特别宽容?
谢谢!