2015-04-22 2 views
7

Я столкнулся с этой проблемой только в своем приложении, независимо от браузера (IE & Chrome). Если я проверил window.URL.createObjectURL(blob) в консоли любой другой страницы в обоих браузерах, то ее работа прекрасна. Но window.URL.createObjectURL(blob) становится неопределенным только на вкладке, в которой я открываю мое приложение :(window.URL.createObjectURL (blob); не определено в моем приложении

я не уверен, что библиотека является удаление «createObjectURL» метод.

следующие мои скрипты

<script src="src/js/libs/jquery/dist/jquery.js"></script> 
<script src="src/js/libs/toastr/toastr.js"></script> 
<script src="src/js/libs/moment/moment.js"></script> 
<script src="src/js/libs/bootstrap/dist/js/bootstrap.js"></script> 
<script src="src/js/libs/angular/angular.js"></script> 
<script src="src/js/libs/angular-route/angular-route.js"></script> 
<script src="src/js/libs/angular-sanitize/angular-sanitize.js></script> 
<script src="src/js/libs/angular-animate/angular-animate.js"></script> 
<script src="src/js/libs/angular-mocks/angular-mocks.js"></script> 
<script src="src/js/libs/angular-bootstrap/ui-bootstrap-tpls.js"></script> 

Я не могу понять, как получить window.URL.createObjectURL

Здесь ошибка в IE консоли

Error: [IGL] Object doesn't support property or method 'createObjectURL' TypeError: Object doesn't support property or method 'createObjectURL'

Здесь ошибка в Chrome

Error: [IGL] window.URL.createObjectURL is not a function TypeError: window.URL.createObjectURL is not a function

Спасибо заранее

+1

так, что это вопрос? – zerkms

+0

Как сделать его доступным? –

+0

Что такое ** точное сообщение об ошибке и где вы его видите? В консоли браузера? – Phil

ответ

7

выясню решение для этого, используя следующий скрипт из Arun & @Phil комментарии. Благодаря им обоим.

Его не с какой-либо библиотекой, в моем приложении где-то в неиспользуемом коде есть глобальный объект URL, который переопределяет window.URL.

Я нашел это, используя следующий код:

(function() { 
     var _createObjectURL = window.URL.createObjectURL; 
       Object.defineProperty(window.URL, 'createObjectURL', { 
       set: function (value) { 
       console.trace('set createObjectURL') 
         _createObjectURL = value; 
       }, 
         get: function() { 
         console.trace('get createObjectURL') 
           return _createObjectURL; 
         } 
       }) 
       })(); 
       (function() { 
       var _URL = window.URL; 
         Object.defineProperty(window, 'URL', { 
         set: function (value) { 
         console.trace('set URL') 
           _URL = value; 
         }, 
           get: function() { 
           console.trace('get URL') 
             return _URL; 
           } 
         }) 
         })(); 
+0

KUDOS за указатель!Один из моих коллег непреднамеренно перезаписал window.URL с его утилитой для извлечения url с использованием специальных методов и т. Д. Я не использовал фрагмент кода, просто использовал поиск по проекту для URL-адресов и вручную прошел их до тех пор, пока не нашел. – Ingmars

Смежные вопросы