我试图弄清楚如何将工具提示的内容与角度绑定。我有一个看起来像这样的指令:
脚本.js
var myApp = angular.module('myApp', []);
myApp.directive('initToolbar', function(){
return {
restrict: 'A',
link: function(scope, element, attrs)
{
$(element).qtip({
content: {
ajax:
{
url: 'button.html'
}
},
position: {
my: 'bottom left',
at: 'bottom middle',
target: $(element)
},
hide: {
fixed : true,
delay : 1000
}
});
}
}
});
它使用此处的 qTip2 插件
我的 index.html 看起来像这样(请注意,在实际文件中,我已将所有源代码都包含在 head 中,我只是没有将其粘贴到此处以避免混乱):
<body>
<div initToolbar>
<p>
Hover over me. Hover over me. Hover over me.
</p>
</div>
</body>
和
按钮.html
<div ng-controller="myController">
<button ng-click="someFunction()">Click me</button>
</div>
正如您在指令代码中看到的那样。button.html 被加载到工具提示中,但是这会阻止 angular 正常工作——当 button.html 加载到弹出窗口时,ng-click 不起作用。那是因为 Angular 不知道它。
我也知道 button.html 是有效的,因为只需添加
<ng-include src="'button.html'">
到 index.html 工作正常(即点击按钮执行 someFunction())
所以我的问题是:
如何将工具提示的实际内容与角度绑定?如果不是内容,有没有办法绑定工具提示,让 Angular 知道它?我熟悉 $scope.$apply() 但我不太确定如何在这里使用它。