我的HTML中有以下ng-style
:
<div ng-style="{'background-image':'url(' + image + ')'}"></div>
然后我的Angular代码通过引入API调用的URL来设置图像变量,如下所示:
app.controller("MainController", function($scope, $http){
$http.get("/api/image").success(function(data){
$scope.image = data.image;
});
});
图像变量最终看起来像这样:
//images.contentful.com/xxxxxxx/my-image.jpg
图片显示正常,但Chrome在控制台中引发以下问题:
Resource interpreted as Image but transferred with MIME type text/html:
我可以通过添加http://
来消除此错误:
<div ng-style="{'background-image':'url(http://' + image + ')'}"></div>
Chrome理解为将其呈现为http://images.contentful.com/xxxxxxx/my-image.jpg
,但IE将其呈现为http:////images.contentful.com/xxxxxxx/my-image.jpg
并且无法正常工作。
如果我只有http:
,则错误会在控制台中显示,但图像可以在IE中运行。
这样做的正确方法是什么?