我正在开发一个我们正在使用角度的项目。大多数页面都包含boostrap工具提示。
在所有情况下,这些工具提示都显示在<b>
元素上。
这就是它如何完成的例子。
<b es-tooltip='show it is true / potwierdzić'>confirm</b>
在指令完成之前,它是用jQuery编写的,所有属性“title”都被找到并转换为工具提示。然后,我们将其交换为指令,现在我们遇到了问题。
它并不适用于所有地方。有时,指令会找到<b>
标记之前的文本。
我在想,像<span>
这样的其他标签可能会令人困惑,但我找不到任何模式。
这是一个屏幕的片段,但不起作用:
<p class="interviewer">Hello {{avatar.name}}. This is John Smith. You have been selected for position in our company. </br> <span class="draggable">Congratulations</span>.If you are still interested in the post, please <b es-tooltip='show it is true / potwierdzić'>confirm</b> your acceptance.</p>
这有效:
<p class="me">Of course, I do. I feel enthusiastic to receive this message. Can I receive a copy of the <b es-tooltip='proposal / oferta'>offer</b> and the benefits <span class="draggable">package</span></p>
当我在指令中的链接函数中跟踪'element'时,好的结果会导致
[b, context: b, jquery: "2.1.1", constructor: function, selector: "", toArray: function…]
虽然不好(来自上面的例子):
[text, context: text, jquery: "2.1.1", constructor: function, selector: "", toArray: function…]
此文字为
".↵ If you are still interested in the post, please "
也许有人知道,为什么这个指令有选择地起作用?
编辑:
esTooltip指令
angular.module('App').directive('esTooltip', function() {
return {
restrict: 'A',
link: function(scope, element, attrs) {
element.tooltip({ trigger: "click hover", title: attrs.esTooltip });
//console.log(element); - the logs i mentioned are from here
},
};
});