Я просто хотел добавить изображение в свое приложение. Как и советовали, я использовал директиву ng-src:
<img ng-src="{{app.imgBig}}" alt="lorem ipsum" height="100" width="200" title="lorem ipsum" />
Он отлично работает в большинстве браузеров, но не в IE8. Изображение не загружается, поскольку вместо добавления абсолютного URL-адреса к имени файла оно возвращает относительный путь и добавляет перед ним «unsafe:».
На самом деле, он пытается загрузить:
небезопасно: img/test.jpg
Вместо:
http://url_of_my_site.com/img/test.jpg
Как вы знаете, это может быть связано с тем, что мне пришлось полностью отключить SCE для поддержки IE7:
$sceProvider.enabled(false);
Быстрое исправление состояло в том, чтобы создать константу базового пути и добавить ее в начало пути к изображению, но это не лучший вариант, поскольку приложение не должно зависеть от этого базового пути.
Есть идеи ?
unsafe:
все еще добавляется, даже с$sceProvider.enabled(false)
, похоже, что некоторое использование$sanitize
все еще происходит. Может быть связано с текущей ошибкой AngularJS — проверьте github.com/angular/angular.js/ Issues/2901 для получения подробной информации и возможного исправления. - person Alex Osborn   schedule 18.02.2014var myApp = angular.module('myApp', [], function ($compileProvider) { $compileProvider.imgSrcSanitizationWhitelist(/^\s*((https?|ftp|mailto):)|#/); });
- person Fred   schedule 19.02.2014