刚遇到一个问题,我正在使用语义 UI 来显示弹出窗口,但如果我在 ng-view 指令中的任何模板内编写代码,它就不起作用,但如果我在 ng-view 指令之外编写它,它就会起作用ng-view 指令,代码有什么问题吗?
这会起作用
<body>
<div class="ui container">
<div ng-view></div>
<div class="ui teal button" data-title="Using click events" data-content="Clicked popups will close if you click away, but not if you click inside the popup">Click Me</div>
</div>
<script>
$('.ui.teal.button').popup({
on: 'click'
});
</script>
</body>
这不会起作用
<!-- index.html -->
<body>
<div class="ui container">
<div ng-view></div>
</div>
</body>
<!--sample.html -->
<div class="ui teal button" data-title="Using click events" data-content="Clicked popups will close if you click away, but not if you click inside the popup">Click Me</div>
<script>
$('.ui.teal.button').popup({
on: 'click'
});
</script>
最佳答案
当您面临必须使用指令并同时使用语义 ui jquery 初始化的情况时,您要做的就是初始化指令内的语义 ui 对象。
因此,您要做的第一件事是在 ng-view 指令中添加按钮。然后创建一个新指令“showPopUp”。
<body>
<div class="ui container">
<div ng-view showPopUp>
<div class="ui teal button" data-title="Using click events" data-content="Clicked popups will close if you click away, but not if you click inside the popup">Click Me</div>
</div>
</div>
<script>
</script>
这是您必须添加到模块中的指令。
theNameOfYourModule.directive( 'showPopUp', function(){
return{
restrict: 'A',
link: function(scope, elem, attrs) {
$('.ui.teal.button').popup({
on: 'click'
});
}
}});
关于javascript - 语义 UI 弹出窗口在 angularjs 指令内不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35167233/