Given ten kod (od kogoś innego):Blob URL w przeglądarce Internet Explorer z angularjs
var module = angular.module('myApp', []);
module.controller('MyCtrl', function ($scope){
$scope.json = JSON.stringify({a:1, b:2});
});
module.directive('myDownload', function ($compile) {
return {
restrict:'E',
scope:{ data: '=' },
link:function (scope, elm, attrs) {
function getUrl(){
return URL.createObjectURL(new Blob([JSON.stringify(scope.data)], {type: "application/json"}));
}
elm.append($compile(
'<a class="btn" download="backup.json"' +
'href="' + getUrl() + '">' +
'Download' +
'</a>'
)(scope));
scope.$watch(scope.data, function(){
elm.children()[0].href = getUrl();
});
}
};
});
The fiddle example działa poprawnie pobrać w chromie. Ale kliknięcie linku "pobierz" nic nie robi w IE11. Brak błędu, brak ostrzeżenia, brak odpowiedzi.
Ale według this jest obsługiwany w IE10 i 11.
Czy istnieje jakiś ustawienie zabezpieczeń IE, który musi zostać zmieniona lub co się dzieje?
IE nie obsługuje wszystkich typów mime typu blob, czy próbowałeś zrobić tylko zwykły tekst i sprawdzić, czy to działa? – joseeight
Mam ten sam problem i próbowałem go z 'text/plain', bezskutecznie. Co ciekawe, mogę kliknąć prawym przyciskiem myszy, zapisać cel jako i to działa. – bhamlin