2015-06-25 2 views
0

Я использую AngularJs для создания веб-страницы, он отлично работает в IE и firefox, но когда я попробовал его в Chrome, он перестает работать. Мне интересно, почему он не работает в хроме, и если есть возможное обходное решение.Binding src in embed не работает в chrome

HTML

<div data-ng-controller="documentController"> 
    <embed src={{documentId}} height="600" width="100%"/> 
</div> 

Javascript

(function(){ 

    var document = angular.module('document', []); 

    document.controller('documentController', ['$scope', '$routeParams', function($scope, $routeParams){ 
     $scope.title = 'Document'; 
     $scope.documentId = "document/" + $routeParams.documentId; 
    }]); 
})(); 

EDIT Ошибка

HTTP ERROR 404 

Problem accessing /%7B%7BdocumentId%7D%7D. Reason: 

    Not Found 
+0

Может быть просто не хватает ' ""' 'вокруг SRC = {{documentId}}'? То есть 'src =" {{documentId}} "' – mGuv

+0

Я пробовал оба «и» без каких-либо результатов. – Frozendragon

ответ

1

document - глобальная переменная в среде браузера (docs), и как только я знаю, ее нельзя переопределить (возможно, это может быть в некоторых старых браузерах). Попробуйте выбрать другое имя для своего модуля, чтобы предотвратить плохие ситуации.

+0

Я попробовал это изменить все, ссылаясь на документ на pdf, но не получив результата. Добавлено ошибка, которую я получил, если это поможет. – Frozendragon

+0

используйте 'ng-src' вместо' src' в Angular ([ng-src docs] (https://docs.angularjs.org/api/ng/directive/ngSrc)) –

+0

Теперь он работает, но он намного медленнее в Chrome по сравнению с другими браузерами. Занимает около 3000 мс в хроме по сравнению с ~ 500 мс в Firefox. Устали на двух разных компьютерах. – Frozendragon

0

Решение, которое я нашел в том, чтобы добавить IFrame, вставлять и объект не работал

<iframe ng-src="{{ruta}}" width='800' height='350' frameborder="0" scrolling="no"> 
    <p>You browser not support iframes.</p> 
</iframe>