Angular.js: ngSrc HTML5 рд╡реАрдбрд┐рдпреЛ рд╕реНрд░реЛрдд рдЯреИрдЧ рдХреЗ рд╕рд╛рде рдареАрдХ рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 9 рд╕рд┐рддре░ 2012  ┬╖  78рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: angular/angular.js

рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕ рдореЗрдВ, рд╡реАрдбрд┐рдпреЛ рддрддреНрд╡реЛрдВ рдкрд░ ngSrc рдирд┐рд░реНрджреЗрд╢рдЯреИрдЧ рдмрд┐рд▓реНрдХреБрд▓ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЕрд╕рдорд░реНрдерд┐рдд рд╡реАрдбрд┐рдпреЛ рдкреНрд░рд╛рд░реВрдк рддреНрд░реБрдЯрд┐ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рд╣реЛрддрд╛ рд╣реИред рдХреНрд░реЛрдо рдореЗрдВ, рдбреЗрдЯрд╛-рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдХреЗ рд╕рд╛рде ngSrc рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛ рд╡реАрдбрд┐рдпреЛ рдХреЛ рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдХреЗрд╡рд▓ рдкреЗрдЬ-рд▓реЛрдб рдкрд░ рд╡реАрдбрд┐рдпреЛ рд▓реЛрдб рдХрд░рддрд╛ рд╣реИред рдЕрд░реНрдерд╛рдд

<video controls>
     <source ng-src="{{src}}">
</video>

рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕ рдореЗрдВ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдХреНрд░реЛрдо рдореЗрдВ рдпрд╣ рдХреЗрд╡рд▓ рдкрд╣рд▓реА рд▓реЛрдбрд┐рдВрдЧ рдкрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рд╣рд╛рд▓рд╛рдБрдХрд┐,

<video ng-src="{{src}} controls></video>

рджреЛрдиреЛрдВ рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЗрд╕реЗ рдмрд┐рдирд╛ рдХрд┐рд╕реА рд╕рдорд╕реНрдпрд╛ рдХреЗ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рд╕рднреА рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рд╡реАрдбрд┐рдпреЛ рдкреНрд░рд╛рд░реВрдк рд╣реЛрдиреЗ рдкрд░ рдпрд╣ рдПрдХ рд╕рдорд╕реНрдпрд╛ рд╣реИред

рд╕рдВрдмрдВрдзрд┐рдд: # 339

misc core moderate investigation broken expected use bug

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдПрдХ рдХрд╕реНрдЯрдо рдирд┐рд░реНрджреЗрд╢ рдХреЗ рд╕рд╛рде рдлрд┐рдХреНрд╕реНрдб

<source ng-repeat="source in sources" vsrc="{{ source.path }}" type="{{ source.type }}" html5vfix>


//Html5 video fix
eshop.directive('html5vfix', function() {
    return {
        restrict: 'A',
        link: function(scope, element, attr) {
            attr.$set('src', attr.vsrc);
        }
    }
});

рд╕рднреА 78 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

Im рдПрдХ рд╕рдорд╕реНрдпрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд░ рд░рд╣рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореБрджреНрджрд╛ Angulars рдПрдирдЬреА-рд░рд┐рдкреАрдЯ рдореЗрдВ рд░рд╣рддрд╛ рд╣реИред
рдЕрдЧрд░ рдореИрдВ рдЙрд╕ рджрд╛рдпрд░реЗ рд╕реЗ рд╡реАрдбрд┐рдпреЛ рд╣рдЯрд╛рддрд╛ рд╣реВрдВ рддреЛ рдпрд╣ рдареАрдХ рдЪрд▓рддрд╛ рд╣реИ, рдЕрдиреНрдпрдерд╛ рдХреЛрдИ рднреА рдирд┐рдпрдВрддреНрд░рдг рд▓реЛрдб рдирд╣реАрдВ рд╣реЛрдЧрд╛ред

рдореИ рднреАред

рдореИ рднреА! рдореЗрд░реА рдорджрдж рдХрд░реЛ

+1

рдореИрдВ ng-src рд╕реНрд░реЛрддреЛрдВ рдХреЛ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП ng-repeat рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рд╡реЗ рдкреЗрдЬ рд▓реЛрдб рдкрд░ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд▓реЛрдб рд╣реЛрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЕрдЧрд░ рд╡реАрдбрд┐рдпреЛ ng-show рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЫрд┐рдкрд╛ рд╣реБрдЖ рд╣реИ рдФрд░ рдлрд┐рд░ рдлрд┐рд░ рд╕реЗ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рддреЛ рд╕реНрд░реЛрдд рдкреБрдирдГ рд▓реЛрдб рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ (рдХреНрд░реЛрдо рдореЗрдВ)ред

рдореИрдВ sourcec0de рдХреЗ рдЕрд╡рд▓реЛрдХрди рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ - рдЕрдЧрд░ рдореИрдВ рдПрдирдЬреА-рд░рд┐рдкреАрдЯ рдХреЛ рд╣рдЯрд╛рддрд╛ рд╣реВрдВ рдФрд░ рд╡реАрдбрд┐рдпреЛ рдкрд░ рдлрд┐рд░ рд╕реЗ рджрд┐рдЦрд╛рдиреЗ рдкрд░ рдПрдХрд▓ рдПрдирдЬреА-рдПрд╕рдХреЗрдЯреА рд╕реНрд░реЛрдд (рдпрд╛ рдХрдИ рдПрдирдЬреА-рдПрд╕рдХреЗрдмреА рд╕реНрд░реЛрдд) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред

рдореБрдЭреЗ рднреА рдпрд╣реА рддрдХрд▓реАрдлрд╝ рд╣реИред рдХреНрдпрд╛ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХреЛрдИ рдЗрд╕ рдкрд░ рдЧреМрд░ рдХрд░ рд░рд╣рд╛ рд╣реИ?

ng-src рдХреЗ рд╕рд╛рде рдпрд╛ рдмрд┐рдирд╛ ng-repeat , рдХреНрд░реЛрдо рдмрд╛рд░-рдмрд╛рд░ рдПрдХ HTML5 рд╡реАрдбрд┐рдпреЛ рдХреЛ рдлрд┐рд░ рд╕реЗ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рдиреЗ рдФрд░ рдлрд┐рд░ рдкреГрд╖реНрда рдкрд░ рд╡рд╛рдкрд╕ рдЖрдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓ рд░рд╣рддрд╛ рд╣реИред

рдПрдХ рд╕реНрд╡рдЪреНрдЫ рдХреИрд╢ рд╕реЗ, рдореБрдЭреЗ 2 рдЕрдиреБрд░реЛрдз (рдкрд╣рд▓реЗ рдПрдХ Pending ) рдорд┐рд▓рддреЗ рд╣реИрдВ, рджреВрд╕рд░реЗ рдХреЗ рд╕рд╛рде 206 Partial Content ред рдпрджрд┐ рдореИрдВ рддрд╛рдЬрд╝рд╛ рдХрд░рддрд╛ рд╣реВрдВ, рддреЛ рдореБрдЭреЗ 304 Not Modified рд╕рд╛рде рдПрдХ рдЕрдиреБрд░реЛрдз рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИред рдЬрдм рдореИрдВ рд╡реАрдбрд┐рдпреЛ рджреГрд╢реНрдп рд╕реЗ рджреВрд░ рдЬрд╛рддрд╛ рд╣реВрдВ, рддрдм рд╡рд╛рдкрд╕ (рдпрд╛ рддреЛ рд▓рд┐рдВрдХ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдпрд╛ рдмреИрдХ рдмрдЯрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ), рдореБрдЭреЗ рд╡реАрдбрд┐рдпреЛ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ Pending рд╕реНрдерд┐рддрд┐ рдХреЗ рд╕рд╛рде рджреЛ рдЕрдиреБрд░реЛрдз рдорд┐рд▓рддреЗ рд╣реИрдВред рдЗрдирдореЗрдВ рд╕реЗ рдПрдХ рдореЗрдВ рдПрдХ рдорд╛рдЗрдо-рдкреНрд░рдХрд╛рд░ video/mp4 (рд╕рд╣реА) рд╣реЛрдЧрд╛, рджреВрд╕рд░рд╛ рдмрд╕ Pending рдХрд╣рддрд╛ рд╣реИред

рдХреНрдпрд╛ рдХреЛрдИ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рджреЗрдЦ рд░рд╣рд╛ рд╣реИ ???

рдХреНрдпрд╛ рдЖрдк рдЗрд╕ рдореБрджреНрджреЗ рдХрд╛ рдПрдХ рдЪрд▓ рдЙрджрд╛рд╣рд░рдг рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?
рдХреНрдпрд╛ рдпрд╣ рдХреБрдЫ рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдкрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ?
рдХреНрдпрд╛ рдЖрдкрдиреЗ рдЬрд╛рдБрдЪ рдХреА рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдмреНрд░рд╛рдЙрдЬрд░ HTML5 рд╡реАрдбрд┐рдпреЛ рддрддреНрд╡реЛрдВ рдкрд░ src рд╡рд┐рд╢реЗрд╖рддрд╛ рдмрджрд▓рдиреЗ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ

рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рдЙрджрд╛рд╣рд░рдг рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЕрднреА рддрдХ рдкреНрд░рдХрд╛рд╢рд┐рдд рдирд╣реАрдВ рд╣реБрдЖ рд╣реИред
рд╕рдлрд╛рд░реА рдореЗрдВ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рдЬреИрд╕рд╛ рдХрд┐ рдКрдкрд░ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдореИрдВрдиреЗ рдПрдХ рд╣реА рдкрд░рд┐рдгрд╛рдо рдХреЗ рд╕рд╛рде рдПрдирдЬреА-рдПрд╕рдХреЗрд╡реА рдирд┐рд░реНрджреЗрд╢ рдФрд░ рд╣рд╛рд░реНрдб-рдХреЛрдбреЗрдб рдПрд╕рдХреЗрд╕реА рд╡рд┐рд╢реЗрд╖рддрд╛ рджреЛрдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ред

рдпрджрд┐ рдЖрдк рд╕реАрдзреЗ jQuery рдХреЗ рд╕рд╛рде src рдХреЛ рдмрджрд▓рддреЗ рд╣реИрдВ рддреЛ рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣реИ?
рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ AngularJS рдХреЗ рдмрдЬрд╛рдп рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдПрдХ рдмрдЧ рд╣реИ?

16 рдЬреБрд▓рд╛рдИ 2013 22:31 рдХреЛ, рдкреЙрд▓ рдЧреНрд░реЗрдирд┐рдпрд░ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com рдиреЗ рд▓рд┐рдЦрд╛:

рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рдЙрджрд╛рд╣рд░рдг рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЕрднреА рддрдХ рдкреНрд░рдХрд╛рд╢рд┐рдд рдирд╣реАрдВ рд╣реБрдЖ рд╣реИред
рд╕рдлрд╛рд░реА рдореЗрдВ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рдЬреИрд╕рд╛ рдХрд┐ рдКрдкрд░ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдореИрдВрдиреЗ рдПрдирдЬреА-рдПрд╕рдХреЗрд╡реА рдирд┐рд░реНрджреЗрд╢ рдФрд░ рд╣рд╛рд░реНрдб-рдХреЛрдбреЗрдб рдПрд╕рдХреЗрд╕реА рджреЛрдиреЛрдВ рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛
рдПрдХ рд╣реА рдкрд░рд┐рдгрд╛рдо рдХреЗ рд╕рд╛рде рд╡рд┐рд╢реЗрд╖рддрд╛ред

-
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рдЙрддреНрддрд░ рд╕реАрдзреЗ рджреЗрдВ рдпрд╛ Gi tHubhttps: //github.com/angular/angular.js/issues/1352#issuecomment -21075654 рдкрд░ рджреЗрдЦреЗрдВред
ред

рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЕрдЧрд░ рдореИрдВ src рдирд╣реАрдВ рдмрджрд▓ рд░рд╣рд╛ рд╣реВрдВ (рдЬреИрд╕реЗ, рд╣рд╛рд░реНрдб-рдХреЛрдб рд╡реАрдбрд┐рдпреЛ src рд╡рд┐рд╢реЗрд╖рддрд╛), рддреЛ рд╕рдорд╕реНрдпрд╛ рд╣реЛрддреА рд╣реИред рдореЗрд░реЗ рдкрд╛рд╕ рдПрдВрдЧреБрд▓рд░ рд╕реЗ рд╕рдорд╕реНрдпрд╛ рдХреЛ рджреВрд░ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдХреЛрдгреАрдп рд╕рд╛рдордЧреНрд░реА рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реИред рдореИрдВ рд╕рд╣рдордд рд╣реВрдВ, рдпрд╣ рдХреНрд░реЛрдо рдореЗрдВ рдмрд╕ рдПрдХ рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдХреИрд╕реЗ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЬрд╛рдПред

рдЖрдкрдХрд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдХреЛрдгреАрдп рд╕рд╛рдордЧреНрд░реА рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реИ?

рд╕рдорд╕реНрдпрд╛ рддрдм рд╣реЛрддреА рд╣реИ, рдЬрдм рдХреЛрдгреАрдп рдирд┐рдпрдВрддреНрд░рдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рд╕рд╛рдордЧреНрд░реА рдмрджрд▓ рдЬрд╛рддреА рд╣реИ, рдПрдХ рдФрд░ рджреГрд╢реНрдп рд▓реЛрдб рд╣реЛ рд░рд╣рд╛ рд╣реИред рдмреИрдХ рдмрдЯрди рдпрд╛ рдкрд┐рдЫрд▓реЗ рд░реВрдЯ рдХреЗ рд▓рд┐рдВрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдкреВрд░реНрд╡ рдХреА рд╕рд╛рдордЧреНрд░реА рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реЛрддреА рд╣реИ рд▓реЗрдХрд┐рди рд╡реАрдбрд┐рдпреЛ рд╣рд░ рдмрд╛рд░ рд▓реЛрдб рд╣реЛрдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓ рд░рд╣рддрд╛ рд╣реИред рдпрджрд┐ рдпрд╣ рдПрдХ рдХреЛрдгреАрдп рдореБрджреНрджрд╛ рд╣реИ, рддреЛ рдпрд╣ рд╢рд╛рдпрдж рдХреЗрд╡рд▓ рдХреНрд░реЛрдо рдореЗрдВ рд╣реИред рдореЗрд░рд╛ рдЕрдиреБрдорд╛рди рд╣реИ рдХрд┐ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрд░реЛрдо рдХреА рдЖрдХреНрд░рд╛рдордХ рдХреИрд╢рд┐рдВрдЧ рдФрд░ рдПрдВрдЧреБрд▓рд░ рдХреА рд╡рд┐рдзрд┐ рдЗрд╕ рдмрд╛рдд рдкрд░ рд╕рд╣рдордд рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреА рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд▓реЛрдб рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

@ рдореЗрд░рд╛ рдкрд░реАрдХреНрд╖рдг рдХрд╛ рдорд╛рдорд▓рд╛ рдерд╛:
рдкреЗрдЬ 2 рдкрд░ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдмрдЯрди рдХреЗ рд╕рд╛рде рдкреЗрдЬ 1
рдкреЗрдЬ 2 рдПрдХ рд╡реАрдбрд┐рдпреЛ рдкреНрд▓реЗрдпрд░ рдФрд░ рдПрдХ рдмрдЯрди рдХреЗ рд╕рд╛рде рдкреЗрдЬ 1 рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП

рдкреГрд╖реНрда 1 рдкрд░ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░реЗрдВ, рдлрд┐рд░ рдкреГрд╖реНрда 2 рдкрд░, рд╡реАрдбрд┐рдпреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд▓реЛрдб рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдкреГрд╖реНрда 1 рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ, рдлрд┐рд░ рдкреГрд╖реНрда 2 рдкрд░ рдЬрд╛рдПрдВ, Google рдХреНрд░реЛрдо рд╡реАрдбрд┐рдпреЛрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмрдВрдж рдХрд░ рджреЗрддрд╛ рд╣реИред рдРрд╕рд╛ рддрдм рд╣реЛрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╡реАрдбрд┐рдпреЛрдЬ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рддрдм рдирд╣реАрдВ рд╣рдЯрд╛рдпрд╛ рдЧрдпрд╛ рдЬрдм рдХреЛрдгреАрдп рдиреЗ DOM рд╕реЗ рддрддреНрд╡ рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдерд╛, рдЬреИрд╕рд╛ рдХрд┐ рдЕрдкреЗрдХреНрд╖рд┐рдд рдерд╛ред рдпрд╣ рдХреЛрдгреАрдпрдЬ рдирд╣реАрдВ рд╣реИ (рдпрд╛!)

Videojs рдкреНрд▓реЗрдпрд░ рдХреЛ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЗрд╕реЗ рд╣рдЯрд╛ рджреЗрдВред рдореИрдВ рдРрд╕рд╛ рдХрд░рддрд╛ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рдирд┐рд░реНрджреЗрд╢ рд╣реИ рдЬреЛ рдПрдХ рдЦрд┐рд▓рд╛рдбрд╝реА рдХреЛ рдЬреЛрдбрд╝рддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдПрдХ рдирд┐рд░реНрджреЗрд╢ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:

... directive('mydir', ... {
    var vp;
    return {
        link: ..{ 
            if (vp) vp.dispose();
            vp = videojs("mp4video");
        }
    };`

рдУрдкреА рдХреА рддрд░рд╣, рдореИрдВ рдПрдХ рдЖрд╡рд░рдг рд╡рд╕реНрддреБ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рд╡реАрдбрд┐рдпреЛ рдХреЛ HTML5 рд╡реАрдбрд┐рдпреЛ рдЯреИрдЧ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд▓реЛрдб рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдХреНрдпрд╛ рдЖрдк рд╕реБрдЭрд╛рд╡ рджреЗ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рдЕрд▓рдЧ рд╕реЗ рд╣рдЯрд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП?

рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ, рд╡реАрдбрд┐рдпреЛрдЬреЗрдПрд╕ рдбреЛрдо рдореЗрдВ рдЬреЛрдбрд╝реЗ рдЧрдП рдЦрд┐рд▓рд╛рдбрд╝рд┐рдпреЛрдВ рдкрд░ рдирдЬрд╝рд░ рд░рдЦрддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдмрджрд▓рд╛рд╡ рдирд╣реАрдВ рджреЗрдЦ рд░рд╣рд╛ рд╣реИред рдпрджрд┐ рдЖрдк DOM рд╕реЗ рддрддреНрд╡ рдХреЛ рд╣рдЯрд╛рддреЗ рд╣реИрдВ (рдЬреИрд╕реЗ рдХрд┐ рдЖрдк рдХрд┐рд╕реА рдЕрдиреНрдп рдорд╛рд░реНрдЧ рдкрд░ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рддреЗ рд╣реИрдВ), рддреЛ VideoJS рдХреЛ рдкрддрд╛ рдирд╣реАрдВ рдЪрд▓реЗрдЧрд╛ рдФрд░ рд╡рд╣ рдЗрд╕реЗ рдлрд┐рд░ рд╕реЗ рдкреНрд░рд╛рд░рдВрдн рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред рдкрдВрдХреНрддрд┐ 17 рджреЗрдЦреЗрдВ: https://github.com/videojs/video.js/blob/master/src/js/core/js
рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рд╡реАрдбрд┐рдпреЛ рдЬреЗрдПрд╕рдПрд╕ рдХреЗ рдмрд╛рд╣рд░ рдирд┐рдХрд╛рд▓рддреЗ рд╣реИрдВ, рддреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдЦрд┐рд▓рд╛рдбрд╝реА рдХреЗ рдирд┐рдкрдЯрд╛рди () рд╡рд┐рдзрд┐ рдХреЛ рдХреЙрд▓ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЬрдм рдЖрдк рдПрдХ jquery рдкреНрд▓рдЧрдЗрди (?) рд▓рдкреЗрдЯрддреЗ рд╣реИрдВред рдпрд╣ рд╡рд╣реА рд╣реИ рдЬреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдХреЛрдгреАрдп рдореБрджреНрджрд╛ рдирд╣реАрдВ рд╣реИред

рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЗ рд╣реЛрдиреЗ рдХреЗ рд╕рд╛рде-рд╕рд╛рдеред
AV рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд▓реЛрдб рдХрд░рдирд╛ src рдпрд╛ ng-src рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрджреЗрд╢ рдпрд╛ рдХрд╛рд░рдЦрд╛рдиреЗ рд▓рд┐рдЦрдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИред
http://stackoverflow.com/questions/15485768/changing-html5s-source-src-attribute-takes-no-effect-wtih-angularjs

рдореБрдЭреЗ рднреА рдпрд╣ рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд░рд╣реА рд╣реИред

рд╡реАрдбрд┐рдпреЛ рдХреНрд░реЛрдо, рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕ рдФрд░ рд╕рдлрд╛рд░реА рдореЗрдВ рд▓реЛрдб рдХрд░рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓ рд░рд╣рддрд╛ рд╣реИред рдпрд╣, рддрдерд╛рдкрд┐, IE рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рдпрд╣рд╛рдБ рдПрдХ рдХрд╛рдо рд╣реИ: http : //stackoverflow.com/questions/15728424/html5-video-is-not-working-with-angularjs-ng-src-tag

рдпрд╣ рдкреЗрдЬ рд▓реЛрдб рдкрд░ рдПрдХ рдЧрдбрд╝рдмрдбрд╝ рдЭрд┐рд▓рдорд┐рд▓рд╛рд╣рдЯ рдмрдирд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

+1

рдПрдХ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣реИ:

рдЕрдкрдиреЗ рдирд┐рдпрдВрддреНрд░рдХ рдореЗрдВ рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдПрдХ рд╕рдорд╛рд░реЛрд╣ рд╕реЗрдЯ рдЗрд╕ рддрд░рд╣ рд╣реИ:

    $scope.play = function(who) {
        var name = who.id.split('.')[0];
        $scope.audio.mp3 = name + '.mp3';
        $scope.audio.ogg = name + '.ogg';
        $scope.audio.play = 'views/audio.html?'+name;
    };

рддрдм рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдореЗрд░реЗ рдЯреЗрдореНрдкрд▓реЗрдЯ рдореЗрдВ рдореЗрд░реЗ рдкрд╛рд╕ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдереЗ:

<div ng-include src="audio.play"></div>

рдореЗрд░реЗ рджреГрд╢реНрдп / рдСрдбрд┐рдпреЛ рдореЗрдВ рдЯреЗрдореНрдкрд▓реЗрдЯ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рджрд┐рдЦрддрд╛ рд╣реИ:

<audio ng-model="audio" controls autoplay >
    <source ng-src="{{audio.mp3}}" type='audio/mp3'></source>
    <source ng-src="{{audio.ogg}}" type='audio/ogg'></source>
</audio>

рдЕрдЧрд░ $ рдЧреБрдВрдЬрд╛рдЗрд╢.audio.play рдирд╣реАрдВ рдмрджрд▓рддреА рд╣реИ рддреЛ рдХреЛрдИ рдкреБрдирдГ рд▓реЛрдб рдирд╣реАрдВ рд╣реЛрдЧрд╛, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдпрд╣ рд╕рд┐рд░реНрдл рдПрдХ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд╕рдВрдЦреНрдпрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ

@ kitp рдиреЗ рд╕реЛрдЪрд╛ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдкреАрдЖрд░ рдерд╛, рдХреНрдпрд╛ рдореЗрд░реА рд╕реНрдореГрддрд┐ рдореБрдЭреЗ рд╡рд┐рдлрд▓ рдХрд░ рд░рд╣реА рд╣реИ?

@IgorMinar рдореИрдВ рдЗрд╕ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдЬрд╛ рд░рд╣рд╛ рдерд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдПрд╣рд╕рд╛рд╕ рд╣реБрдЖ рдХрд┐ рдореИрдВ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдкреБрди: рдЙрддреНрдкрдиреНрди рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ (рджреЗрдЦреЗрдВ http://jsfiddle.net/J77gE/)ред рдореБрдЭреЗ рд▓рдЧрд╛ рдХрд┐ рдЕрдзрд┐рдХ рдмрд╛рдзреНрдпрдХрд╛рд░реА рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рд╕рд╛рде рдХреЛрд░ рдХреЗ рдмрд╛рд╣рд░ рдореАрдбрд┐рдпрд╛ рд╣реЗрд▓реНрдкрд░ рдореЙрдбреНрдпреВрд▓ рдмрдирд╛рдиреЗ рдореЗрдВ рдордЬрд╝рд╛ рдЖрдПрдЧрд╛ред

рд▓реЗрдХрд┐рди рдЬрд╣рд╛рдБ рддрдХ рдореИрдВ рдмрддрд╛ рд╕рдХрддрд╛ рд╣реВрдБ, рдПрдирдЬреА- src рдЖрдзреБрдирд┐рдХ рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдФрд░ рдЖрдзреБрдирд┐рдХ рдХреЛрдгреАрдп рдореЗрдВ рд╕реНрд░реЛрдд рдЯреИрдЧ рдХреЗ рд▓рд┐рдП рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ

рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдмрддрд╛рдИ рдЧрдИ рд╕рдорд╕реНрдпрд╛ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рдмрджрд▓рдиреЗ рдФрд░ рдмреИрдХ рдмрдЯрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдХрд╛рд░рдг рдереАред рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХреИрд╕реЗ jsfiddle рд╕рдорд╕реНрдпрд╛ рдХреЛ рдлрд┐рд░ рд╕реЗ рдмрдирд╛рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реИред

рдпрд╣ рдирд╣реАрдВ рд╣реИ, рдореБрджреНрджрд╛ рдпрд╣ рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╕реНрд░реЛрдд рдЯреИрдЧреЛрдВ рдХреЛ рдкреНрд░рдХреНрд╖реЗрдкрд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдореБрджреНрджрд╛ рдирд╣реАрдВ рд╣реИ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдореБрджреНрджрд╛ рдирд╣реАрдВ рд╣реИред рдореИрдВ рдЖрдкрдХреЗ рд╡рд┐рд╢реЗрд╖ рдореБрджреНрджреЗ рдХреЛ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдкреБрди: рдкреЗрд╢ рдирд╣реАрдВ рдХрд░ рдкрд╛рдпрд╛ рд╣реВрдВ

@ рдСрдЯреЛ рдПрдХреНрд╕рдкреЛ рдЖрдк рдЗрд╕реЗ рдХреИрд╕реЗ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдбреЗрдореЛ рдРрдк рдФрд░ рдирд┐рд░реНрджреЗрд╢ рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

http://jsfiddle.net/AutoSponge/Yh9en/

рд╡реАрдбрд┐рдпреЛ рд▓рд┐рдВрдХ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред рдпрд╣ рдкрд╣рд▓реА рдмрд╛рд░ рд▓реЛрдб рд╣реЛрдЧрд╛ред рд╣реЛрдо рдФрд░ рдлрд┐рд░ рд╡реАрдбрд┐рдпреЛ рдкрд░ рдлрд┐рд░ рд╕реЗ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред 1 рдпрд╛ 2 рдХреНрд▓рд┐рдХ рдХреЗ рднреАрддрд░ рдпрд╣ рд╕рдВрднрд╡рддрдГ Chrome рдореЗрдВ рд▓реЛрдб рдХрд░рдирд╛ рдмрдВрдж рдХрд░ рджреЗрдЧрд╛ред

(рдФрд░ рдЬрдЬ рдордд рдХрд░реЛ, рдореИрдВрдиреЗ 8 рдорд╣реАрдиреЗ рдкрд╣рд▓реЗ рд╕реЗ рдПрдХ рдРрдк рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЗрд╕реЗ рдПрдХ рд╕рд╛рде рдлреЗрдВрдХ рджрд┐рдпрд╛ рдерд╛!)

@ рдСрдЯреЛ рдЗрд╕ рдПрдХ рдХреЛрдгреАрдп рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИред рдпрд╣ Chrome рдХрд╛ рдПрдХ рдЕрдЬреАрдм рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдЕрднреА рднреА рдЖрдкрдХреА рд╕реНрд░реЛрдд рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЗрдВрдЯрд░рдкреЛрд▓ рдХрд░ рд░рд╣рд╛ рд╣реИ рдФрд░ рд╕рд╣реА src рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣рд╛ рд╣реИред рдпрд╣ рдХреИрд╢рд┐рдВрдЧ рдХреЗ рд╕рд╛рде рдПрдХ рдореБрджреНрджрд╛ рд▓рдЧрддрд╛ рд╣реИ, рдЬреЛ рдереЛрдбрд╝рд╛ рджреБрд░реНрднрд╛рдЧреНрдпрдкреВрд░реНрдг рд╣реИред (рдЖрдк рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ ngIf рдХреЗ рд╕рд╛рде рднреА рд░рдЦрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ ngShow + рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкрд░рд┐рд╡реГрддреНрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ)

рдореИрдВ рдорд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдХреНрд░реЛрдо рдХреЗ рд╕рд╛рде рдПрдХ рджреБрд░реНрднрд╛рдЧреНрдпрдкреВрд░реНрдг рдореБрджреНрджрд╛ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдореБрдЦреНрдп рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдпрд╣ рдореБрджреНрджрд╛ 9 рдорд╣реАрдиреЗ рддрдХ рдЦреБрд▓рд╛ рд░рд╣рд╛ рдФрд░ рдЗрд╕ рдкрд░ рдмрд╣реБрдд рдХрдо рдХрд╛рдо рд╣реБрдЖред рдЪреВрдВрдХрд┐ рдХреНрд░реЛрдо рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИ, рдХреНрдпрд╛ рдЖрдкрдХреЛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреИрд╢-рдмрд╕реНрдЯрд┐рдВрдЧ рд╡рд┐рдХрд▓реНрдк рдмрдирд╛рдирд╛ рдЕрдиреБрдЪрд┐рдд рд╣реИ? рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕рд┐рд░реНрдл src рдХреЗ рд▓рд┐рдП рдПрдХ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╕рдВрд▓рдЧреНрди рд╣реЛрдЧрд╛ред

рдореИрдВрдиреЗ рдпрд╣ рднреА рд╕реЛрдЪрд╛ рдХрд┐ рдЗрд╕реЗ рдкреБрд╢рд╕реНрдЯреИрдЯ рдХреЗ рд╕рд╛рде рдХреБрдЫ рдХрд░рдирд╛ рдкрдбрд╝ рд╕рдХрддрд╛ рд╣реИ - рдпрд╛ рддреЛ рдХреНрд░реЛрдо рдореЗрдВ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдпрд╛ рдЗрд╕реЗ рдХреЛрдгреАрдп рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ред рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдИрдорд╛рдирджрд╛рд░реА рд╕реЗ рд╕реЛрдЪрд╛ рдерд╛ рдХрд┐ рдпрд╣ рдЕрдм рддрдХ рддрдп рд╣реЛ рдЪреБрдХрд╛ рд╣реЛрдЧрд╛ред

рдореБрдЭреЗ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╡рд┐рд╢реЗрд╖ рдореБрджреНрджрд╛ рд╢рд╛рдпрдж рдХреНрд░реЛрдорд┐рдпрдо рдЗрд╢реНрдпреВ рдЯреНрд░реИрдХрд░ рдкрд░ рд╣реИ (рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ HTMLMediaElement рдХреЗ рдХреБрдЫ рдЬреЛрдбрд╝реЗ рд╣реИрдВ рдЬреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЦреБрд▓реЗ рдХреИрд╢ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рд╡рд╣рд╛рдВ рдмрд╛рдд рдХрд░рдиреЗ рд▓рд╛рдпрдХ рд╣реЛрдЧрд╛)ред

рдореИрдВ рдпрд╛рдж рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛, рд▓реЗрдХрд┐рди рдпрд╣ рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рдпрд╣ рдХрд▓реНрдкрдирд╛ рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реИ (рдФрд░ рдпрд╣ рдкрд╣рд▓реА рдмрд╛рд░ рдирд╣реАрдВ рд╣реЛрдЧрд╛ рдХрд┐ рдЕрдЯрдХрд▓реЗрдВ рдЕрдЬреАрдм / рджреБрд░реНрднрд╛рдЧреНрдпрдкреВрд░реНрдг рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рд▓рд┐рдП рдкреВрдЫреА рдЧрдИ рд╣реЛрдВ)

рдпрд╣ рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдХрд┐рдП рдЬрд╛ рд░рд╣реЗ рдореБрджреНрджреЗ рд╕реЗ рдЕрд▓рдЧ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рдореБрджреНрджрд╛ рдерд╛ рдЬрд╣рд╛рдВ

рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдХреБрдЫ рд╣рдж рддрдХ рд╕рдордЭрджрд╛рд░ рдФрд░ рд╕рдВрдмрдВрдзрд┐рдд рдерд╛!

рдмрд╕ рдХреБрдЫ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдХрд╛ рдкрддрд╛ рдЪрд▓рд╛ред рдпрд╣ рдХреНрд░реЛрдо рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХрд┐рд╕реА рдЕрдиреНрдп рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ (рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рд╕рдордп рдХреЗ рдмрд╛рдж, рдЖрджрд┐) :)
рдореЗрдВ рдЕрдВрддрд┐рдо рдЯрд┐рдкреНрдкрдгреА
http://stackoverflow.com/questions/16137381/html5-video-element-request-stay-pending-forever-on-chrome

рдПрдХ рдЕрдиреНрдп рдиреЛрдЯ рдХреЗ рд░реВрдк рдореЗрдВ, HTML5 рдХрд▓реНрдкрдирд╛ рдиреЛрдЯ рдЬреЛ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ src рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рддрд╛ рд╣реИрдЯреИрдЧ рдХрд╛ рдХреЛрдИ рдкреНрд░рднрд╛рд╡ рдирд╣реАрдВ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди src рд╡рд┐рд╢реЗрд╖рддрд╛ рдкрд░ рд╕рдорд╛рди рдХрд░рдиреЗ рд╕реЗ

рдереЛрдбрд╛ рдЧреБрдЧрд▓реА рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдореИрдВрдиреЗ рдкрд╛рдпрд╛ рдХрд┐ рдпрд╣ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╡рддрдпрд╛ рдХреНрд░реЛрдо рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ рдЬреЛ рдЙрдкрд▓рдмреНрдз рд╕реЙрдХреЗрдЯ рдХреЗ рдЗрдВрддрдЬрд╛рд░ рдореЗрдВ рдХреЛрдгреАрдп рдирд╣реАрдВ рд╣реИ, рдФрд░ рдпрд╣ рдХрд┐ рд╡реАрдбрд┐рдпреЛ рдЯреИрдЧ рдореЗрдВ рдкреНрд░реАрд▓реЛрдб = "рдХреЛрдИ рдирд╣реАрдВ" рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рд╕рдорд╕реНрдпрд╛ рдареАрдХ рд╣реЛ рдЧрдИред

рд╡реИрдХрд▓реНрдкрд┐рдХ рд╣рд▓

рдирд┐рдпрдВрддреНрд░рдХ рдореЗрдВ

$scope.mp3 = "http://download.jw.org/audio.mp3"

$scope.$watch('mp3', function() {
       $("audio").attr("src",$scope.mp3)
   });

html:

<audio id="mejs" type="audio/mp3" controls="controls"></audio>

@agliottone рдЖрдкрдХреЗ рд╕реБрдЭрд╛рдП рдЧрдП рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдмреБрд░реА рдкреНрд░рдерд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдЖрдкрдХреЛ рдХрднреА рднреА рдЙрд╕ рддрд░рд╣ рдХреЗ рдирд┐рдпрдВрддреНрд░рдХ рд╕реЗ DOM рдкрд░ рдирд╣реАрдВ рд▓рд┐рдЦрдирд╛ рдЪрд╛рд╣рд┐рдПред рдПрдХ рдХрд╕реНрдЯрдо рдирд┐рд░реНрджреЗрд╢ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред

@ рдмреАрдЯрдлреЛрд░реНрдб 1 рд╕рд╣рдордд рд╣реИ рд▓реЗрдХрд┐рди ..
рдЙрд╕рдиреЗ рдЕрдВрддрд┐рдо рджреБрд╖реНрдЯреЛрдВ рдХреЛ рд╕рдорд░реНрдкрд┐рдд рдХрд┐рдпрд╛, рддреБрдо рдЙрдкрд╛рдпреЛрдВ рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░реЛ

+1

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рд░ рдмрд╛рд░ рдПрдХ рдирдпрд╛ рд╕реНрд░реЛрдд рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЖрдкрдХреЛ рдирдП рд╡реАрдбрд┐рдпреЛ рд╕реНрд░реЛрдд рдХреЛ рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдлрд┐рд░ рд╕реЗ рдореВрд▓ рд╡реАрдбрд┐рдпреЛ рддрддреНрд╡ рдкрд░ .load() рдХреЙрд▓ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред

рдирдорд╕реНрддреЗ, рдореБрдЭреЗ Google Chrome рдкрд░ рдХреЛрдгреАрдпрдЬреЗрдПрд╕ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдорд╕реНрдпрд╛ рд╣реИ рдЬрдм рдореИрдВ рдкреГрд╖реНрда рдХреЛ рдкрд╣рд▓реА рдмрд╛рд░ рдПрдЪрдЯреАрдПрдордПрд▓ 5 рд╡реАрдбрд┐рдпреЛ рд▓реЛрдб рдХрд░рддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдЬрдм рдореИрдВ рджреГрд╢реНрдп рдХреЛ рдПрдирдЬреА-рд╡реНрдпреВ рдХреЗ рд╕рд╛рде рдмрджрд▓ рджреЗрддрд╛ рд╣реВрдВ рддреЛ рдпрд╣ рд▓реЛрдб рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕ рдореЗрдВ рдПрдХ рдЗрдВрдЯрд░рдиреЗрдЯ рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░ рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдореБрдЭреЗ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИ!

рдпрд╣ <embed> рдФрд░ ngSrc рд╕рдорд╛рди рдореБрджреНрджреЗ рдХреА рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИред # 339 рджреЗрдЦреЗрдВ

рдЗрд╕ рдиреАрджреЗ рдХреЛ рддрдп рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рд╣реИ :(

рдореИрдВрдиреЗ рдПрдХ plnkr рд▓рд┐рдЦрд╛ рд╣реИ
рд╡реАрдбрд┐рдпреЛ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ, рд╡реАрдбрд┐рдпреЛ рд▓реЛрдб рд╣реЛрддрд╛ рд╣реИред рдЕрдиреНрдп рд▓рд┐рдВрдХ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ рдлрд┐рд░ рд╡реАрдбрд┐рдпреЛ рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛рдПрдВред рд╡реАрдбрд┐рдпреЛ рд▓рдВрдмрд┐рдд рд╣реИред рдЖрдк рдХреНрд░реЛрдо network рдореЗрдВ рдЕрдиреБрд░реЛрдз рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред рджреЛ рдЕрдиреБрд░реЛрдз, рдПрдХ рдкрд┐рдЫрд▓реЗ рд╣реИ, рдЕрднреА рднреА рд╣реЛ рд░рд╣реА рд╣реИред рдПрдХ рдФрд░ рдирдпрд╛ рд╣реИ, рд▓рдВрдмрд┐рдд рд╣реИред

@kaiqigong рдореБрдЭреЗ рдкрд┐рдЫрд▓реЗ рд╣рдлреНрддреЗ рдХрд╛рдо рдХрд░рдирд╛ рдкрдбрд╝рд╛ рдХреНрдпреЛрдВрдХрд┐ рд╡реАрдбрд┐рдпреЛ рдХреЗ рд▓рд┐рдП URL рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдерд╛ рдХреНрдпреЛрдВрдХрд┐ рд╡реАрдбрд┐рдпреЛ рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рд╕реНрдерд╛рдиреАрдп рдирд╣реАрдВ рдерд╛ред

http://plnkr.co/edit/CL0Lh6VGMy0M3mR1SvVA?==view

рдореИрдВрдиреЗ рдЖрдкрдХрд╛ plnkr рдлреЛрд░реНрдХ рдХрд┐рдпрд╛ рдФрд░ URL рд╕реЗрдЯ рдХрд░рдиреЗ рдФрд░ рдЙрд╕ рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд┐рдпрд╛:

   .controller('VideoController', function($scope, $sce, $routeParams){
        $scope.name = "VideoController";
        $scope.params = {
          videoUrl: $sce.trustAsResourceUrl("http://www.videogular.com/assets/videos/videogular.mp4")
        };
   })

рд╡реАрдбрд┐рдпреЛ рдкрд░ рджреЗрд░реА рд╣реЛ рд░рд╣реА рд╣реИ рд▓реЗрдХрд┐рди рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред

@ рдлрд┐рд▓рд┐рдк- haydon рдЖрдк рдЬрд╡рд╛рдм рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред
рдореИрдВрдиреЗ рдЖрдкрдХреА plnkr рдХреЛрд╢рд┐рд╢ рдХреА, рд▓реЗрдХрд┐рди рдпрд╣ рдЕрднреА рднреА рдареАрдХ рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИред (рд▓рд┐рдВрдХ рдХреЗ рдмреАрдЪ рдЬрд▓реНрджреА рд╕реЗ рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВред)
рдореБрдЭреЗ рдЬреЛ рдорд┐рд▓рд╛ рд╣реИ, рдЬрдм рд╣рдо рд╡реАрдбрд┐рдпреЛ рдЯреИрдЧ (рдорд╛рд░реНрдЧ рдпрд╛ рдХреБрдЫ рдЕрдиреНрдп DOM рд╕рдВрдЪрд╛рд▓рди рдХреЛ рдмрджрд▓рдХрд░) рдХреЛ рд╣рдЯрд╛рддреЗ рд╣реИрдВ, рддреЛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЕрднреА рднреА рд╡реАрдбрд┐рдпреЛ рд╕реНрд░реЛрдд рдХреЛ рдЦреАрдВрдЪ рд░рд╣рд╛ рд╣реИред рдЬрдм рд╣рдо рд╡реАрдбрд┐рдпреЛ рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛рддреЗ рд╣реИрдВред рдПрдХ рдФрд░ рд╡реАрдбрд┐рдпреЛ рдЕрдиреБрд░реЛрдз рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдЬреЛ рдиреЗрдЯрд╡рд░реНрдХ рдЯреНрд░реИрдлрд╝рд┐рдХ рдХреЛ рдЬрд╛рдо рдХрд░ рджреЗрддрд╛ рд╣реИред
рдпрджрд┐ рдореИрдВ рд╡реАрдбрд┐рдпреЛ рдЯреИрдЧ рд╣рдЯрд╛рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ src '' рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реВрдВ, рддреЛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЦреАрдВрдЪрдирд╛ рдмрдВрдж рдХрд░ рджреЗрдЧрд╛, рдЬреЛ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░рддрд╛ рд╣реИред рдХреГрдкрдпрд╛ рдЗрд╕ рдХреЛрдбрдкреЗрди рдХреЛ рдЖрдЬрд╝рдорд╛рдПрдВ: http://codepen.io/cagegong/pen/bJHAz

рддреЛ рдореЗрд░рд╛ рдЕрдВрддрд┐рдо рд╕рдорд╛рдзрд╛рди:

$scope.$on '$destroy', () ->
  angular.element('video').attr 'src', ''

рд╣рд╛рдБ рдореЗрд░рд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд╕рд┐рд░реНрдл 100% рдирд╣реАрдВ, рдХреНрдпреЛрдВ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЕрдиреБрд░реЛрдз рдХреЛ рдирд╣реАрдВ рдорд╛рд░рддрд╛ рд╣реИ рдЬрдм рдбреЛрдо рддрддреНрд╡ рдпрд╣ рдирд╖реНрдЯ рдХрд░ рд░рд╣рд╛ рд╣реИ рдореБрдЭреЗ рдкрддрд╛ рдирд╣реАрдВ рд╣реИред рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдпрд╣ рдХреБрдЫ рдРрд╕рд╛ рд╣реИ рдЬрд┐рд╕реЗ рдХреЛрдгреАрдп рдХреЛ рдЦреБрдж рдХреЛ рд╕рдВрднрд╛рд▓рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдпрд╣ рджреЗрдЦрдирд╛ рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ рдХрд┐ рдЗрд╕реЗ рдЦрд╛рд▓реА рд╕реНрдЯреНрд░рд┐рдВрдЧ рдкрд░ рд╕реЗрдЯ рдХрд░рдиреЗ рд╕реЗ рдЕрдиреБрд░реЛрдз рдереЛ рдХреЛ рдорд╛рд░рддрд╛ рд╣реИ, рдореБрдЭреЗ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдЗрд╕реЗ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕реЗрдЯрдЕрдк рдХрд░рдирд╛ рдкрдбрд╝ рд╕рдХрддрд╛ рд╣реИред рдзрдиреНрдпрд╡рд╛рджред

@ рдЭрд╛рд░реБрдЬрд╛рдУрдбреНрд╕
рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЖрдкрдХреА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░реЗрдЧрд╛

: +1:

рд╡рд╛рд╣, рджреЛ рд╕рд╛рд▓ рдФрд░ рдХреБрдЫ рдирд╣реАрдВред рдХреНрдпрд╛ рдХреЛрдгреАрдп рдмрдирд╛рдП рд░рдЦрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ?

рдХреЛрдгреАрдп рд╕рдордп рдФрд░ рдкреНрд░рдпрд╛рд╕ рдХреЗ рд▓рд╛рдпрдХ рдирд╣реАрдВ рд╣реИред рдЙрдиреНрд╣реЛрдВрдиреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рдореБрджрд╛рдп рдХреЛ "рднрд╛рдбрд╝ рдореЗрдВ рдЬрд╛рдУ" рдХрд╣рд╛ред

@IDontEatSoap рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдореИрдВ рдпрд╣ рдкреНрд░рд╢реНрди рдХреНрдпреЛрдВ рд▓рд╛ рд░рд╣рд╛ рд╣реВрдВ, рдмрд╕ рдХрдорд┐рдЯ рдФрд░ рд░рд┐рд▓реАрдЬрд╝ рдХреА рд╕реВрдЪреА рджреЗрдЦреЗрдВред рд╣рд░ рд╣рдлреНрддреЗ рдПрдХ рдирдИ рд░рд┐рд▓реАрдЬ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП рдФрд░ рдХреБрдЫ рд╕рдкреНрддрд╛рд╣рд╛рдВрддреЛрдВ рд╕рд╣рд┐рдд _a day_, рдпрд╣ рдореБрдЭреЗ рдмрд╣реБрдд рдмрдирд╛рдП рд░рдЦрд╛ рдЧрдпрд╛ рд╣реИ ...

@ рдлрд┐рд▓рд┐рдк-рд╣реИрдбрди рдХреГрдкрдпрд╛ рд╕рдВрд╡рд╛рджреА рдкреЗрд╢реЗрд╡рд░ рд░рдЦреЗрдВ рдФрд░ рддрдХрдиреАрдХреА рдорд╛рдорд▓реЛрдВ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░реЗрдВ, рдЖрдк рд╣рдорд╛рд░реА рдЖрдЪрд╛рд░ рд╕рдВрд╣рд┐рддрд╛ рдХрд╛ рдЙрд▓реНрд▓рдВрдШрди рдХрд░ рд░рд╣реЗ рд╣реИрдВред

@IDontEatSoap @ phillip-haydon рдпрджрд┐ рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕ рдореБрджреНрджреЗ рдореЗрдВ рджрд┐рд▓рдЪрд╕реНрдкреА рд░рдЦрддреЗ рд╣реИрдВ рддреЛ рдЖрдЧреЗ рдмрдврд╝рдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рдкрддрд╛ рд╣реИ рдХреЛрдб рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рд╕рд╛рде рдПрдХ рдкреБрд▓ рдЕрдиреБрд░реЛрдз рднреЗрдЬрдирд╛ рд╣реИ рдЬреЛ рд╕рднреА рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдореЗрдВ рднрд╡рд┐рд╖реНрдп рдХрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рдФрд░ рдлрд┐рд░ рднреА рдПрдХ рд╕рд╛рдзрд╛рд░рдг рд╡реАрдбрд┐рдпреЛ src рдЯреИрдЧ рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИ?

рдореИрдВ $ sde рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд░рдХреЗ рдФрд░ src = "{{$ sce.trustAsResourceUrl (item.VideoUrl)}}} рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣рд╛ рд╣реВрдВред"

рдореБрдЭреЗ рдЧрд▓рдд рдордд рд╕рдордЭреЛ, рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреЛрдгреАрдп рдкрд╕рдВрдж рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рд▓реЗрдХрд┐рди рд╡реАрдбрд┐рдпреЛ src рдФрд░ SVG рдЯреИрдЧ рдЬреИрд╕реА рдЫреЛрдЯреА рдЪреАрдЬреЗрдВ рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИрдВ рдФрд░ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рд╣реИред

рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдЬрд╛рд░реА рд░рдЦреЗрдВ :): +1:

+1, рдЧрддрд┐рд╢реАрд▓ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рд▓рд╛рдЗрд╡рд╕реНрдЯреНрд░реАрдо рд╡реЗрдм рдХреИрдорд░рд╛ рдЬреЛрдбрд╝рдирд╛ рдЕрд╕рдВрднрд╡ рд╣реИред

@ pkozlowski-рдУрдкрдирд╕реЛрд░реНрд╕ рдореБрдЭреЗ рдЕрдм рдХреЛрдИ рджрд┐рд▓рдЪрд╕реНрдкреА рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рдЕрдм рдПрдВрдЧреБрд▓рд░ рдХреА рдкрд░рд╡рд╛рд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЖрдкрдиреЗ V2 рдХреЗ рд▓рд┐рдП рд╕рдореБрджрд╛рдп рдХреЛ рдЦреЛрдж рджрд┐рдпрд╛ рд╣реИред рдЗрд╕ рдкрд░ рдкреНрд░рдпрд╛рд╕ рдмрд░реНрдмрд╛рдж рдХрд░рдиреЗ рдореЗрдВ 0 рдЕрдВрдХ рд╣реИред

@ phillip-haydon рдЙрд╕ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдореИрдВ рд╕рд┐рд░реНрдл Front. рдлреНрд░реЗрдо рдореЗрдВ рджреЗрдЦ рд░рд╣рд╛ рдерд╛ред рдореИрдВрдиреЗ V2 рдореБрджреНрджреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрд╣рд▓реЗ рдирд╣реАрдВ рд╕реБрдирд╛ рдерд╛ред рдореИрдВ рдФрд░ рдореЗрд░реА рдЯреАрдо рдиреЗ V1 рдФрд░ V2 рдХреЗ рдмреАрдЪ рд╕рдВрдЧрддрддрд╛ рдХреЛ рдХреИрд╕реЗ рддреЛрдбрд╝ рд░рд╣реЗ рд╣реИрдВ, рдЗрд╕рдХреЗ рдХрд╛рд░рдг React.js рдХреЗ рд╕рд╛рде рдЬрд╛рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рд╣реИред рдЖрдкрдХреЛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкрд╛рдпрдерди рд╕рдореБрджрд╛рдп рдореЗрдВ рд╣реБрдИ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреА рд╕реЛрдЪ рдиреЗ рд╕рднреА рдХреЛ рд╕рдмрдХ рд╕рд┐рдЦрд╛рдпрд╛ рд╣реЛрдЧрд╛ред

: рдирд┐рд░рд╛рд╢:

@ phillip-haydon рдФрд░ @StevenDStanton - рдореБрдЭреЗ рдпрд╣ рд╕реБрдирдХрд░ рдЦреЗрдж рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рдХрд┐рд╕реА рдЕрдиреНрдп рдврд╛рдВрдЪреЗ рдХреЗ рд╕рд╛рде рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЪреБрдирд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЖрдкрдХреЛ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдЙрдкрдХрд░рдгреЛрдВ рдХреЛ рдЪреБрдирдирд╛ рд╣реЛрдЧрд╛ред

рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдПрдВрдЧреБрд▓рд░рдЬреЗрдПрд╕ рдиреЗ рд╕рдореБрджрд╛рдп рдХреЛ рдирд╣реАрдВ рдбреБрдмреЛрдпрд╛ рд╣реИ, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдореБрджрд╛рдп рдХреЛ рдПрдВрдЧреБрд▓рд░ 1.x рдХреЗ рдСрди-рдЧреЛрдЗрдВрдЧ рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рдХрд╣реАрдВ рдЕрдзрд┐рдХ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╣рдо AngularJS 1.4.0 рдХреЛ рдЬрд╛рд░реА рдХрд░рдиреЗ рдХреЗ рдХрд░реАрдм рд╣реИрдВ, рдЬреЛ рдХрд┐ рдЕрдм рддрдХ рдХреЗ рдмрдбрд╝реЗ рд╕рдВрд╕реНрдХрд░рдг рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рдмреАрдЪ рд╕рдмрд╕реЗ рдХрдо рд╕рдордп рд╣реЛрдЧрд╛ рдФрд░ рдХреЛрд░ рдЯреАрдо рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдЕрдзрд┐рдХ рд╕рд╛рдореБрджрд╛рдпрд┐рдХ рд╕рджрд╕реНрдп рдереЗ рдЬреЛ рдкрд╣рд▓реЗ рдХрднреА рднреА рдереЗред рдПрдХ рдмрд╛рд░ рдпрд╣ рд╕рдВрд╕реНрдХрд░рдг рдЬрд╛рд░реА рд╣реЛ рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж рд╣рдо рд╡рд┐рдХрд╛рд╕ рдХреЛ AngularJS 1.5 рдХреА рдУрд░ рд╢реБрд░реВ рдХрд░реЗрдВрдЧреЗ, рдЬрд┐рд╕реЗ 2015 рдХреЗ рдЕрдВрдд рд╕реЗ рдкрд╣рд▓реЗ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП (рд╕рднреА рдЪреАрдЬреЗрдВ рд╕рдорд╛рди рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП) рдпрд╣ рднреА рдпрд╛рдж рд░рдЦреЗрдВ рдХрд┐ Google, рдХрд╛ рд╢рд╛рдмреНрджрд┐рдХ рд░реВрдк рд╕реЗ рд╕реИрдХрдбрд╝реЛрдВ рдЙрддреНрдкрд╛рджрди рдХрд╛ рдЙрдкрдпреЛрдЧ рд╣реЛрддрд╛ рд╣реИ AngularJS 1.x рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╕рдВрдЪрд╛рд▓рди рдореЗрдВ рдЕрднреА рд╕реЗ рд╣реАред рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдирд╛ Google рдХреЗ рд╣рд┐рддреЛрдВ рдореЗрдВ рд╣реИ рдХрд┐ рдпреЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧ, рдЖрдкрдХреЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд╕рдорд╛рди рд╣реА, рдПрдХ рдЬреАрд╡рди рдпрд╛ рдПрдХ рдкреНрд░рд╡рд╛рд╕ рдкрде рдЬрд╛рд░реА рд░рдЦреЗрдВред

рдПрдВрдЧреБрд▓рд░ 2 рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ - рдпрд╣ рд╡рд┐рдХрд╛рд╕ рдкреНрд░рдпрд╛рд╕ рд╕рдореБрджрд╛рдп рдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреНрд╡рд╛рд░рд╛ рдареАрдХ рд╕реЗ рд╕рдВрдЪрд╛рд▓рд┐рдд рд╣реЛрддрд╛ рд╣реИред рдЙрджреНрджреЗрд╢реНрдп рдПрдХ рддреЗрдЬ, рдЫреЛрдЯреЗ, рдЕрдзрд┐рдХ рдордЬрдмреВрдд рдврд╛рдВрдЪреЗ рдХреЛ рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рд╣реИ рдЬреЛ рдмрдбрд╝реЗ рдФрд░ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдЧрд╛; рдореЛрдмрд╛рдЗрд▓ рдЙрдкрдХрд░рдгреЛрдВ рдкрд░ рдмреЗрд╣рддрд░ рдкреНрд░рджрд░реНрд╢рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП; рдФрд░ рд╡реЗрдм рдШрдЯрдХреЛрдВ рдХреЗ рдкрд╛рд░рджрд░реНрд╢реА рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде рд╡реЗрдм рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЛ рдЬрд╛рд░реА рд░рдЦрдирд╛ред

рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, AngularJS 1.x рдкрд░ рдЪреАрдЬреЛрдВ рдХреЛ рдЬрд╛рд░реА рд░рдЦрдирд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рдерд╛, рдХреНрдпреЛрдВрдХрд┐ рд╣рдореЗрдВ рдореВрд▓рднреВрдд рдмрд┐рд▓реНрдбрд┐рдВрдЧ рдмреНрд▓реЙрдХреНрд╕ рдЬреИрд╕реЗ рдХрд┐ рдЗрдВрдЬреЗрдХреНрдЯрд░ рдФрд░ рдХрдВрдкрд╛рдЗрд▓рд░ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕ рдкрд░ рдкреБрдирд░реНрд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдкрд░рд┐рдгрд╛рдо рдПрдХ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдирдпрд╛ рдврд╛рдБрдЪрд╛ рд╣реИ рдЬреЛ рдЙрд╕реА рдЙрдЪреНрдЪ рд╕реНрддрд░реАрдп рд▓рдХреНрд╖реНрдпреЛрдВ рдХреЛ рдЖрдЧреЗ рдмрдврд╝рд╛рддрд╛ рд╣реИ рдЬрд┐рд╕рдиреЗ рдЕрдВрдЧреБрд▓рд░рдЬреЗрдПрд╕ рдХреЛ рд▓реЛрдХрдкреНрд░рд┐рдп рдФрд░ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдмрдирд╛ рджрд┐рдпрд╛ рд╣реИ, рдмрд▓реНрдХрд┐ рдпрд╣ рдЖрдиреЗ рд╡рд╛рд▓реЗ рд╡рд░реНрд╖реЛрдВ рдХреЗ рд▓рд┐рдП рднрд╡рд┐рд╖реНрдп рдХрд╛ рд╕рдмреВрдд рджреЗрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИред

AngularJS 1.x рд╕реЗ Angular 2 рдореЗрдВ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЯрд░реНрдирдХреА рдЕрдкрдЧреНрд░реЗрдб рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдпрд╣ рд╕рдЪ рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ AngularJS 1.x рд╕реЗ Angular 2 рдореЗрдВ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реЛрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ AngularJS 1.x рд╕реЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ рдврд╛рдВрдЪреЗ рдореЗрдВ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред

рдпрд╣ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдмреНрд░рд╛рдЙрдЬрд╝рд░ <source> рддрддреНрд╡ рдХреЛ рдЕрдкрдиреЗ src рд╡рд┐рд╢реЗрд╖рддрд╛ рдореЗрдВ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдирд╣реАрдВ рд╣реИред рдореВрд▓ рдкреЛрд╕реНрдЯрд░ рдХреЗ рдореБрджреНрджреЗ рдХреЛ ng-if рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд╛рдо рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

Http://plnkr.co/edit/rpiEg1ki7KXgD40zy8qV рджреЗрдЦреЗрдВ

рдореИрдВ рд╕рд┐рд░реНрдл рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ

        $timeout(function () {
            $("video source").attr("src", 'https:' + file.url);
            $("video").attr("src", 'https:' + file.url);
        }, 500);

@ рдЯреЛрдЯ-рд░ - рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдЖрдкрдХрд╛ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдмреНрд░рд╛рдЙрдЬрд╝рд░ src рд╡рд┐рд╢реЗрд╖рддрд╛ рдкрд░ <video> рддрддреНрд╡ рдХреЗ рдкрд░рд┐рд╡рд░реНрддрди рдХреЛ рджреЗрдЦрддрд╛ рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣рд╛рдБ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ: http://plnkr.co/edit / 6dNmNjAvZ8b6t09mUE65

HTML5 рдХрд▓реНрдкрдирд╛ рд╕реЗ: http://www.w3.org/TR/2014/REC-html5-20141028/embedded-content-0.html#the -source-element

рд╕реНрд░реЛрдд рд╕реНрд░реЛрдд рдФрд░ рдЗрд╕рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреЛ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдирд╛ рдЬрдм рддрддреНрд╡ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╡реАрдбрд┐рдпреЛ рдпрд╛ рдСрдбрд┐рдпреЛ рддрддреНрд╡ рдореЗрдВ рдбрд╛рд▓рд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рдХреЛрдИ рдкреНрд░рднрд╛рд╡ рдирд╣реАрдВ рдкрдбрд╝реЗрдЧрд╛ред рдЬреЛ рдЦреЗрд▓ рд░рд╣рд╛ рд╣реИ рдЙрд╕реЗ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП, рд╕реАрдзреЗ рдореАрдбрд┐рдпрд╛ рддрддреНрд╡ рдкрд░ рд╕реАрдзреЗ src рд╡рд┐рд╢реЗрд╖рддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рд╕рдВрднрд╡рддрдГ рдЙрдкрд▓рдмреНрдз рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЗ рдмреАрдЪ рд╕реЗ рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП canPlayType () рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ред рдЖрдо рддреМрд░ рдкрд░ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд┐рдП рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рд╕реНрд░реЛрдд рддрддреНрд╡реЛрдВ рдореЗрдВ рд╣реЗрд░рдлреЗрд░ рдХрд░рдирд╛ рдПрдХ рдЕрдирд╛рд╡рд╢реНрдпрдХ рд░реВрдк рд╕реЗ рдЬрдЯрд┐рд▓ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╣реИред

рдЗрд╕рдХрд╛ рдЕрд░реНрде рдпрд╣ рд╣реИ рдХрд┐ рдЖрдк рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреЛ AngularJS (рдпрд╛ рдЙрд╕ рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдФрд░) рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд░реЛрдд рддрддреНрд╡реЛрдВ рдХреЛ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдмрджрд▓рдиреЗ рдХреА рдЙрдореНрдореАрдж рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, рд╣рдореЗрдВ рдЬреЛ рдХреБрдЫ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рд╡рд╣ рдХреБрдЫ рдореАрдбрд┐рдпрд╛ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдирд┐рд░реНрджреЗрд╢ рд╣реИрдВ рдЬреЛ рдЙрдкрдпреБрдХреНрдд рд╣реЛрдиреЗ рдкрд░ <video> рдЯреИрдЧ рдХреЗ src рдкреНрд░реЙрдкрд░реНрдЯреА рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рд╕реЗ рдирд┐рдкрдЯреЗрдВрдЧреЗред рд╢рд╛рдпрдж @Kitp рдХреА рдПрдирдЬреА-рдореАрдбрд┐рдпрд╛ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреА рддрд░реНрдЬ рдкрд░ рдХреБрдЫред


рд░рджреНрдж рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ рдПрдХ рд╡реАрдбрд┐рдпреЛ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдз рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ, рдореЗрд░рд╛ рд╕реБрдЭрд╛рд╡ рд╣реИ рдХрд┐ рд╣рдо рдореЗрдВ рдХреЗ рд╡рд┐рдЪрд╛рд░ @kaiqigong рдХреА рддрд░рд╣ рдХреБрдЫ рдХреЛ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддрд╛ рд╣реИ https://github.com/angular/angular.js/issues/1352#issuecomment -+рел,реорео,ремрел,рекреирелред рд╢рд╛рдпрдж рд╣рдо рдПрдХ video рддрддреНрд╡ рдирд┐рд░реНрджреЗрд╢ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдЕрдкрдиреЗ src рд╕реЗ "" рддрдм рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИ рдЬрдм рдпрд╣ рддрддреНрд╡ рдирд╖реНрдЯ рд╣реЛ рд░рд╣рд╛ рд╣реЛ?

рдЕрдиреНрдп рд╕рдВрднрд╛рд╡рд┐рдд рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ:

рд╕рджрд╕реНрдпрддрд╛ рд╕рдорд╛рдкреНрдд рдХрд░реЗрдВред рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП AngularJS рдЫреЛрдбрд╝рдХрд░ред рдХреНрд╖рдорд╛ рдХрд░реЗрдВ рджреЛрд╕реНрддреЛрдВ, рд▓реЗрдХрд┐рди рдЖрдкрдХреА рдХрдбрд╝реА рдореЗрд╣рдирдд рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред

рд╣рд╛рдБ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИ, рдореИрдВ рднреА рд╕рджрд╕реНрдпрддрд╛ рд╕рдорд╛рдкреНрдд рдХрд░ рд░рд╣рд╛ рд╣реВрдБред рдореИрдВрдиреЗ http://aurelia.io/ рдХреЗ рд▓рд┐рдП AngularJS рдЦрд╛рдИ рд╣реИ

рдЗрд╕рд▓рд┐рдП рддрдХрдиреАрдХреА рдореБрджреНрджреЗ рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛рдПрдВ:

рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рджреЛ рд╕рдорд╕реНрдпрд╛рдУрдВ рдкрд░ рдЪрд░реНрдЪрд╛ рдХреА рдЬрд╛ рд░рд╣реА рд╣реИ:

  • <video> рддрддреНрд╡ рдореЙрдирд┐рдЯрд░ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдФрд░ рди рд╣реА src рд╡рд┐рд╢реЗрд╖рддрд╛ рдкрд░ <source> рдЯреИрдЧ рдкрд░ рдкрд░рд┐рд╡рд░реНрддрди рдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрд░рддрд╛ рд╣реИред рдпрд╣ HTML5 рдХрд▓реНрдкрдирд╛ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ рдФрд░ рдЗрд╕рд▓рд┐рдП рдирд┐рдХрдЯ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдЗрд╕рдХреЗ рдмрджрд▓рдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рд╣рдо <source> рд╕рд╛рде рдпрд╛ рдмрд┐рдирд╛ ngSrc <source> рддрддреНрд╡реЛрдВ рдХреЛ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рдореБрд╣рд╛рд╡рд░реЗрджрд╛рд░ AngularJS рддрд░реАрдХреЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рд╣рдо рдХреЗрд╡рд▓ <source> рдЯреИрдЧ рдХреЗ src рд╡рд┐рд╢реЗрд╖рддрд╛ рдореЗрдВ рдкреНрд░рдХреНрд╖реЗрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рдХреНрдпреЛрдВрдХрд┐ <video> рддрддреНрд╡ рдкрд░рд┐рд╡рд░реНрддрди рдирд╣реАрдВ рдЙрдард╛рдПрдВрдЧреЗред
  • рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдореЗрдВ (рдмреНрд░рд╛рдЙрдЬрд╝рд░) <video> рддрддреНрд╡ рдПрдХ рд╡реАрдбрд┐рдпреЛ рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрд╕рдХреЗ рдЕрдиреБрд░реЛрдз рдХреЛ рд░рджреНрдж рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рддреЛ рддрддреНрд╡ рдХреЛ DOM рд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдкреНрд░рднрд╛рд╡ рдпрд╣ рд╣реИ рдХрд┐ рдпрджрд┐ рдЖрдк рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ <video> рдЯреИрдЧ рдЬреЛрдбрд╝рдиреЗ рдФрд░ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдбреЛрдо рдХреЛ рдЬрд▓реНрджреА рд╕реЗ рдмрджрд▓ рджреЗрддреЗ рд╣реИрдВ, рддрд╛рдХрд┐ рд╡реАрдбрд┐рдпреЛ рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рди рд╣реЛ, рддреЛ рдЖрдк рдРрд╕реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдлрдВрд╕ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд╣рд╛рдВ рдПрдХ рдирдпрд╛ <video> рддрддреНрд╡ рдПрдХ рд╡реАрдбрд┐рдпреЛ рдХреЛ рдПрдХреНрд╕реЗрд╕ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реИ рдЬреЛ рдЕрднреА рднреА рдкрд╣рд▓реЗ рд╕реЗ рдирд╖реНрдЯ <video> рддрддреНрд╡ рд╕реЗ рд▓рдВрдмрд┐рдд рд╣реИред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╡реАрдбрд┐рдпреЛ рдЕрдиреБрд░реЛрдз рдХреЛ рд░рджреНрдж рдХрд░ рджреЗрдЧрд╛ рдпрджрд┐ src (рдпрд╛ currentSrc ?) рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреЛ рдирд╖реНрдЯ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЦрд╛рд▓реА рд╕реНрдЯреНрд░рд┐рдВрдЧ ( "" ) рдкрд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛ? ред

рди рддреЛ рдЗрди рдореБрджреНрджреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИ AngularJS рдкреНрд░рддрд┐-рдмрдЧред рд▓реЗрдХрд┐рди рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╣рдо рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред

рдкрд╣рд▓реА рд╕рдорд╕реНрдпрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ:
рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХрд╛ рдПрдХрдорд╛рддреНрд░ рддрд░реАрдХрд╛, рдХреЛрдгреАрдп рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рдврд╛рдВрдЪреЗ рдореЗрдВ, HTML5 рдХрд▓реНрдкрдирд╛ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдмрджрд▓рддреЗ рд╕реНрд░реЛрддреЛрдВ рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦрдирд╛ рд╣реИред рдореИрдВрдиреЗ рдХрд┐рд╕реА рднреА рдЕрдиреНрдп рдкреНрд░рдореБрдЦ рдврд╛рдВрдЪреЗ рдореЗрдВ рдЗрд╕рдХрд╛ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рджреЗрдЦрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдПрдВрдЧреБрд▓рд░рдЬреЗрдПрд╕ рдореЗрдВ рд╕рдмрд╕реЗ рдЖрдХрд░реНрд╖рдХ рддрд░реАрдХрд╛ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ рдмрдирд╛рдХрд░ рд╣реИред рдпрд╣ рдкреНрд░рднрд╛рд╡реА рд░реВрдк рд╕реЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рд▓реЛрдЧреЛрдВ рдиреЗ рдХреНрдпрд╛ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ:

рд╕рд╛рдореБрджрд╛рдпрд┐рдХ рд░реБрдЪрд┐ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рд╣рдо рдПрдВрдЧреБрд▓рд░ 1.5 рдХреЗ рд▓рд┐рдП рдЗрд╕рдХреЗ рд╕рдорд╛рди рдХреБрдЫ рд╡рд┐рдХрд╕рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рдкреИрдХреЗрдЬ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рд╕рдорд╛рди рд░реВрдк рд╕реЗ ngCookies рдкреИрдХ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ)ред 1.5 рдкреНрд▓рд╛рдирд┐рдВрдЧ рдХрд░рддреЗ рд╕рдордп рдЗрд╕реЗ рдлрд┐рд░ рд╕реЗ рджреЗрдЦреЗрдВред рдЗрд╕ рдмреАрдЪ, рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдЙрдкрд╛рдп рдпрд╣ рд╣реИ рдХрд┐ рдЙрдкрд░реЛрдХреНрдд рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рдПрдХ рдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдП рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЖрдкрдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛ рдХрд╛рдо рдмрдирд╛рдиреЗ рдореЗрдВ рдорджрдж рдХреА рдЬрд╛рдПред

рджреВрд╕рд░реА рд╕рдорд╕реНрдпрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ:
рдореИрдВ рдЗрд╕ рд╕рдордп рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд▓рдЧрддрд╛ред рдореЗрд░реЗ рдХреНрд░реЛрдо рдореЗрдВ, рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкрд┐рдЫрд▓реЗ <video> рддрддреНрд╡реЛрдВ рдХреЗ рд╡реАрдбрд┐рдпреЛ рдХреЛ рддрдм рднреА рд╕реНрдЯреНрд░реАрдо рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦрддрд╛ рд╣реИ рдЬрдм рддрдХ рдХрд┐ рд╣рдо рддрддреНрд╡ рдХреЛ рдирд╖реНрдЯ рдирд╣реАрдВ рдХрд░ рджреЗрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рдХреБрдЫ рд╕рдорд╛рдирд╛рдВрддрд░ рдореЗрдВ рдЪрд▓рдиреЗ рд╡рд╛рд▓реЗ рдХрдИ рдЕрдиреБрд░реЛрдзреЛрдВ рдореЗрдВ рдЖрдЧреЗ рдФрд░ рдкреАрдЫреЗ рдкрд░рд┐рдгрд╛рдо рджреЗрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпреЗ рдЕрдиреБрд░реЛрдз рдирд╣реАрдВ рд▓рдЧрддреЗ рд╣реИрдВ рдирдП <video> рддрддреНрд╡ рдХреЗ рд╡реАрдбрд┐рдпреЛ рдХреЛ рд▓реЛрдб рд╣реЛрдиреЗ рд╕реЗ рд░реЛрдХреЗрдВред

screen shot 2015-02-26 at 11 14 02

рдпрд╣рд╛рдВ, рдЖрдк рдПрдХ рд╕рд╛рде рдХрдИ рд╡реАрдбрд┐рдпреЛ рдбрд╛рдЙрдирд▓реЛрдб рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред

рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдПрдХ рдмрдЧ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕ рдмреАрдЪ, рдЖрдк рдЗрд╕реЗ рдЕрдкрдирд╛ video рдирд┐рд░реНрджреЗрд╢ (рджреЗрдЦреЗрдВ http://plnkr.co/edit/QLMJd24rxnklr638e57Q?p=preview) рдкреНрд░рджрд╛рди рдХрд░рдХреЗ рдЗрд╕реЗ рд╣рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ :

  .directive('video', function() {
    return {
      restrict: 'E',
      link: function(scope, element) {
        scope.$on('$destroy', function() {
          element.prop('src', '');
        });
      }
    };
  })

screen shot 2015-02-26 at 11 17 32

рдпрд╣рд╛рдВ, рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЬрдм рд╣рдо рд╡реАрдбрд┐рдпреЛ рджреГрд╢реНрдп рд╕реЗ рджреВрд░ рдЬрд╛рддреЗ рд╣реИрдВ рддреЛ рд╡реАрдбрд┐рдпреЛ рдбрд╛рдЙрдирд▓реЛрдб рдмрдВрдж рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред

рдлрд┐рд▓рд╣рд╛рд▓, рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд╢рдВрд╕рд┐рдд рд╕рдорд╛рдзрд╛рди рд╣реИред

@petebacondarwin ... w3c рдпреБрдХреНрддрд┐ рдХреЛ рджреЗрдЦрдиреЗ рд╕реЗ, рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдкрд░ рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдПрдЬреЗрдВрдЯ рдЧрд░реНрднрдкрд╛рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдЯреНрд░реАрдо рд▓реЛрдб рдХрд╛ рдХрд╛рд░рдг рд╣реЛрдЧрд╛ред window.stop() рдХреЙрд▓рд┐рдВрдЧ рдиреЗ рдореЗрд░реЗ рд▓рд┐рдП рдХрд┐рд╕реА рднреА рдЖрдЧреЗ рдХреА рдиреЗрдЯрд╡рд░реНрдХ рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдХреЛ рд░рджреНрдж рдХрд░ рджрд┐рдпрд╛ред

рдЕрдВрддрддрдГ, рдпрджрд┐ рдЖрдк рдЕрдиреНрдп рд╕рдВрд╕рд╛рдзрди рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рд╕рдмрд╕реЗ рдЖрджрд░реНрд╢ рдмрд╛рдд рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдХреБрдЫ рд╣рдж рддрдХ рд╕рдорд╛рдзрд╛рди рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред

@daleyjem рдЗрд╕ рд╡рд┐рдЪрд╛рд░ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред
рд╣рдо рдЗрд╕реЗ рдПрдХ рдореБрдЦреНрдп рдирд┐рд░реНрджреЗрд╢ рдореЗрдВ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рд╕реЗ рдЕрдиреНрдп рд╡реАрдбрд┐рдпреЛ рдХреЛ рд░реЛрдХ рджреЗрдЧрд╛ред

рдмрд╕ рдПрдХ рдлрд╝рд┐рд▓реНрдЯрд░ рдмрдирд╛рдПрдВ:
app.filter ("TrustUrl", ['$ sce', рдлрд╝рдВрдХреНрд╢рди ($ sce))
рд╡рд╛рдкрд╕реА рд╕рдорд╛рд░реЛрд╣ (рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧрдЙрд▓)
$ sceред
};
}]);

рдлрд╝рд╛рдЗрд▓ рджреЗрдЦреЗрдВ:
<рдСрдбрд┐рдпреЛ src = "{{Your_URL | trustUrl}}" рдСрдбрд┐рдпреЛрдкреНрд▓реЗрдпрд░ рдирд┐рдпрдВрддреНрд░рдг> рдСрдбрд┐рдпреЛ>

рдиреЛрдЯ: рдСрдбрд┐рдпреЛ рдЯреИрдЧ рдореЗрдВ рд╕реНрдерд╛рди рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦреЗрдВ

рдирдорд╕реНрддреЗ, рдореИрдВ рд╡реАрдбрд┐рдпреЛрдЧреБрд▓рд░ рдХрд╛ рдирд┐рд░реНрдорд╛рддрд╛ рд╣реВрдВред

рдЬреИрд╕рд╛ рдХрд┐ @petebacondarwin рдиреЗ рд╕рдордЭрд╛рдпрд╛, рдпрд╣ AngularJS рдХреЗ рд╕рд╛рде рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдЬреНрдпрд╛рджрд╛рддрд░ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рд╣реИ рдХрд┐ рд╡реАрдбрд┐рдпреЛ HTML5 рдкрд░ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рдХреИрд╕реЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╡реАрдбрд┐рдпреЛ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред рдФрд░ рдпрд╣ рдФрд░ рднреА рдЕрдЬреАрдм рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм рдЖрдкрдХреЛ рдореЛрдмрд╛рдЗрд▓ рдЙрдкрдХрд░рдгреЛрдВ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред

рдореИрдВрдиреЗ рд╡реАрдбрд┐рдпреЛ рдФрд░ рдПрдЪрдЯреАрдПрдордПрд▓ 5 рдХреЗ рд╕рд╛рде рд╡реАрдбрд┐рдпреЛреЛрдЧреБрд▓рд░ рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рд╕рдВрдШрд░реНрд╖ рдХрд┐рдпрд╛ рдФрд░ рдореБрдЭреЗ рдпрд╣ рдХрд╣рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдЗрд╕реЗ рд╕рднреА рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдореЗрдВ рдореВрд▓ рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░рдирд╛ рдХрдард┐рди рд╣реИ, рд▓реЗрдХрд┐рди рдЕрд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реИред

рдЗрд╕рд▓рд┐рдП, рдЕрдЧрд░ рдХреЛрдИ рднреА AngularJS рдЯреАрдо рдЗрд╕ рдкрд░ рдорджрдж рдЪрд╛рд╣рддрд╛ рд╣реИ, рддреЛ рдореБрдЭреЗ рдЗрд╕ рдкрд░ рдЕрдкрдиреЗ рд╡рд┐рдирдореНрд░ рдЬреНрдЮрд╛рди рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдФрд░ рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдореЗрдВ рдпреЛрдЧрджрд╛рди рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреАред рдпрд╣ рдХреБрдЫ рдРрд╕рд╛ рд╣реИ рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореБрдЭреЗ рдкрд░реЗрд╢рд╛рди рдХрд░рддрд╛ рд╣реИ рдФрд░ рдХреЛрдгреАрдп 2 рдореЗрдВ рдореБрдЭреЗ рдЗрд╕рд╕реЗ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рджреЛрдиреЛрдВ рд░реВрдкрд░реЗрдЦрд╛рдУрдВ рдореЗрдВ рд╕рдорд╛рди рджреГрд╖реНрдЯрд┐рдХреЛрдг рд░рдЦрдирд╛ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ред

+1

рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЕрдкрдиреЗ рд╡реАрдбрд┐рдпреЛ рдкреНрд▓реЗрдпрд░ рдкрд░ рдПрдХ рдирд┐рд░реНрджреЗрд╢ рд╣реИ, рддреЛ рдЖрдк src рдпреВрдЖрд░рдПрд▓ рдЪрд░ рдХреЛ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЕрдкрдбреЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

link: function (scope, element, attrs) {
    var video = element.find('video')[0];
    scope.$watch('source.url', function (val) {
        video.src = val;
    });
}

рдПрдХ рдЯрди рдкрд░реАрдХреНрд╖рдг рдФрд░ рддреНрд░реБрдЯрд┐ рдХреЗ рдмрд╛рдж, рдореЗрд░реЗ рдкрд╛рд╕ рдЕрдВрдд рдореЗрдВ рдПрдВрдбреНрд░реЙрдЗрдб 4.2.2, 4.3, 4.4.4, 5.0.0, рдФрд░ 5.1.0 рдкрд░ рдордЬрд╝рдмреВрддреА рд╕реЗ рд╡реАрдбрд┐рдпреЛ рдЪрд▓рд╛ рд░рд╣рд╛ рд╣реИред рд╕реНрдерд╛рдкрд┐рдд Crosswalk рдФрд░ рдЙрдкрдпреЛрдЧ Videogular

рдПрдХ рдХрд╕реНрдЯрдо рдирд┐рд░реНрджреЗрд╢ рдХреЗ рд╕рд╛рде рдлрд┐рдХреНрд╕реНрдб

<source ng-repeat="source in sources" vsrc="{{ source.path }}" type="{{ source.type }}" html5vfix>


//Html5 video fix
eshop.directive('html5vfix', function() {
    return {
        restrict: 'A',
        link: function(scope, element, attr) {
            attr.$set('src', attr.vsrc);
        }
    }
});

But рдкрд╛рд░реНрд╕ рдпреВрдЖрд░рдПрд▓ рд╡реАрдбрд┐рдпреЛ рдореЗрдВ json рдХреЗ рд╕рд╛рде DB, рд▓реЗрдХрд┐рди рдХрд╛рдо рдирд╣реАрдВ ((рдХреГрдкрдпрд╛ рдорджрдж)

рдЬрдм рдореИрдВ рдЕрдкрдиреЗ рдкреНрд▓реЗ рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддрд╛ рд╣реВрдВ рддреЛ рд╡реАрдбрд┐рдпреЛ рдЙрд▓реНрдЯрд╛ рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИ рдФрд░ рдЬрдм рдлреБрд▓рд╕реНрдХреНрд░реАрди рдХреЛ рджрдмрд╛рдХрд░ рдЙрд╕рдХреЗ рд╕реНрдерд╛рди рдХреЛ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдХреЛрдИ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ

+1 рд╡рд╣рд╛рдБ рдХреЛрдИ рдкрд╛рд░реНрд╕ рдирд╣реАрдВ рд╣реИ рдпреВрдЖрд░рдПрд▓ рдпрд╣ src рдпрд╛ ngSrc рдХреЗ рд╕рд╛рде рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
рдХреНрдпрд╛ рдпрд╣ рддреНрд░реБрдЯрд┐ рдЫреЛрдбрд╝ рджреА рдЧрдИ рд╣реИ?

рдореИрдВ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд░рд╣реА рд╣реИ рд╡рд╣рд╛рдБ рдЕрднреА рддрдХ рдПрдХ рд╕рдорд╛рдзрд╛рди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ

рдпрд╣ рд╕рдорд╛рдзрд╛рди рдмрд╣реБрдд рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

http://www.rubencanton.com/blog/2014/07/adding-video-src-with-angular.html

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

nosideeffects picture nosideeffects  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

guyandtheworld picture guyandtheworld  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

visnup picture visnup  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

piu picture piu  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

ashish91 picture ashish91  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ