在FF和所有,我的javascript工作良好。但在Chrome中,它会给出这样的信息:
资源解释为脚本,但传输与MIME类型文本/纯。
我已经检查了所有的脚本标签,他们都有MIME类型=“文本/javascript”。它甚至说jquery和jquery ui。Chrome出了什么问题?
问题是什么,解决方法是什么?它是我必须改变浏览器的“选项”,还是来自服务器,或者我必须调整我的代码?
在FF和所有,我的javascript工作良好。但在Chrome中,它会给出这样的信息:
资源解释为脚本,但传输与MIME类型文本/纯。
我已经检查了所有的脚本标签,他们都有MIME类型=“文本/javascript”。它甚至说jquery和jquery ui。Chrome出了什么问题?
问题是什么,解决方法是什么?它是我必须改变浏览器的“选项”,还是来自服务器,或者我必须调整我的代码?
当前回答
当我试图通过javascript (jQuery在这种情况下)改变数组中的背景图像时,我也遇到了同样的问题。
无论如何。
而不是这样:
m.setStyle('background-image','url(/templates/site/images/style5/'+backgs[i]+')')
这样做:
eval("m.setStyle('background-image','url(/templates/site/images/style5/'+backgs[i]+')')");
Chrome javascript在试图解析一个以'为结构的元素中的变量时会搞砸。在我的例子中,它在插入图像数组之前停止。它不是解析图像url +图像名称(在数组内),而是只解析图像url。
您可能需要在代码中搜索,看看它发生在哪里。FF, IE和其他所有的都没有这个问题。
其他回答
奇怪的问题,但这帮我解决了我的问题。有时候,即使是最简单的事情也很难弄清楚……
而不是使用 /js/main.css在我的脚本标签我使用js/main.css
是的,它确实起到了作用。我坐在WAMP / Windows上,我没有vhost,但只是使用localhost/<项目>
如果我引用/js/main.css,那么我引用localhost/css/main.css,而不是localhost/<项目>/css/main.css
当你想到它的时候,这是很明显的,但如果有人偶然发现了这个问题,我想我会分享这个答案。
这意味着服务器正在发送Javascript HTTP响应
Content-Type: text/plain
您需要配置服务器以发送JavaScript响应
Content-Type: application/javascript
在我的例子中,服务器发送了正确的内容类型,但内容编码不正确。确保只对gzip压缩的资源设置Content-Encoding: gzip。此外,在我修复了服务器中的头文件(在我的例子中,是谷歌云存储)后,我不得不等待几分钟以正确反映由于缓存造成的更改。
如果你正在使用AdonisJS (REST API,例如),一种避免这种情况的方法是这样定义响应头:
response.safeHeader('Content-type', 'application/json')
我在使用web框架时遇到了这个问题,并通过将相关的javascript文件移动到指定的(由框架)javascript文件夹中来修复它。