javascript - 将库 (Plyr) 与指令和 AngularJS 一起使用

标签 javascript jquery html angularjs plyr.js

我想使用Plyr使用 AngularJS,但是当我使用 AngularJS 安装 plyr 时,Plyr 不起作用

我必须包括:

<html>
<head>
<link rel="stylesheet" href="https://cdn.plyr.io/1.7.0/plyr.css">

</head>
<body>

<script src="https://cdn.plyr.io/1.7.0/plyr.js"></script>

<div id="plyr" data-type="youtube" data-video-id="bTqVqk7FSmY"></div>

<script>
var player = plyr.setup(document.querySelector('#plyr'), {
    debug: true
});

</script>


</body>
</html>

我尝试创建一个指令:

(function (){
    'use strict';

    angular.module('ngPlyr', []);

    angular.module('ngPlyr').directive('plyr', function () {
        return {
            template: '<div id="plyr" data-type="youtube" data-video-id="bTqVqk7FSmY"></div>'
        };
    })

})();

<div plyr></div>

最佳答案

您需要在指令的 link 函数中初始化 Plyr。像这样的东西应该有效:

(function (){
    'use strict';

    angular.module('ngPlyr', []);

    angular.module('ngPlyr').directive('plyr', function () {
        return {
            template: '<div data-type="youtube" data-video-id="bTqVqk7FSmY"></div>',
            link: function(scope, element, attrs) {
                var player = plyr.setup(element, { debug: true });
            }
        };
    })

})();

关于javascript - 将库 (Plyr) 与指令和 AngularJS 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37949243/

相关文章:

javascript - JQuery 验证器自定义错误放置不起作用

javascript - 找出有多少成千上万

c# - 如何绑定(bind)到 Blazor 中集合/列表中的元素?

javascript - jQuery UI Sortable 工作异常

javascript - 如何覆盖由 jquery/javascript 设置的 css 高度?

javascript - 无法以json数据动态传递数据

javascript - JQuery:将 HTML 添加到父 Div 作为 AJAX 的结果

javascript - 拖动浏览器导致背景图像与下一节重叠

javascript - 使用 JavaScript 或 jQuery 将 json 的某些部分转换为数组

jquery - 隐藏段落ID的html文本