【发布时间】:2013-11-01 15:01:28
【问题描述】:
我正在学习 AngularJS,我在对话方面遇到了一些困难。
由于我正在将我的应用程序从基于 Jquery 的经典应用程序转换为 Angular 应用程序,因此我想使用 Fancybox 打开带有自定义动态 HTML 的对话框,并使用 fancybox open 方法。
$.fancybox.open(html);
我编写了一个使用 fancybox 的服务:现在我打开了我的对话框,但是对话框内的内容不是针对 angular 的“编译”,所以任何 angular 指令都设置为那个 HTML 不起作用。
查看示例
http://plnkr.co/edit/UwryF1ocleyND7zxCGJz?p=preview
我想问题出在服务中,但我不知道如何解决。你能告诉我如何在对话框中显示的 HTML 中获得对角度指令敏感的 html 吗?
更新:
我尝试使用$compile,并设置指令而不是服务(直接从 ng-click 调用指令内的方法)
http://plnkr.co/edit/Y18bRSMdV62VObMGJ2Ie?p=preview
现在怎么了?为什么我的$compile 没有按预期工作?
【问题讨论】:
-
你真的需要将整个fancyBox包装成一个角度指令,以使其与角度顺利工作
-
如果
.wrapper未隐藏,警报是否有效?我禁用了“显示:无”,但他们没有。 -
@JFK 不,他们没有,因为没有编译角度绑定。
-
@charlietfl 你能举个例子吗?
标签: javascript jquery angularjs dialog fancybox