【问题标题】:Angular UI tooltip in ng-repeat not closingng-repeat 中的 Angular UI 工具提示未关闭
【发布时间】:2014-04-29 13:24:37
【问题描述】:

请看下面的插件: http://plnkr.co/edit/RPpjULZsSDnTFPKiafl2

基本上,当向上/向下移动到 ng-disabled 为 true 的位置时,angular-ui 工具提示仍然存在。任何有关如何解决此问题的想法将不胜感激!

我正在使用 Chrome,但问题在 Firefox 中显得更加严重,即使删除了 ng-disabled,工具提示仍然保留在 mouseleave 上。

【问题讨论】:

  • 为什么要使用逗号分隔元素属性?那不是有效的html。在任何情况下see this answer 尤其是基于@cotten cmets 的编辑。这似乎与您遇到的问题相同
  • 谢谢@JoseM!我在发布之前确实看到了该答案,但无法解决我的问题。实际上,我还有一个问题,当您重复移动项目时,工具提示实际上也会移动,但我无法在 plunker 中复制它,因此可能是范围问题。逗号只是因为我显然在 Jade 上花费了太多时间。

标签: angularjs angular-ui angular-ui-bootstrap


【解决方案1】:

您可以使用$tooltipProvider 并更改触发器映射以将click 作为mouseenter 显示触发器的附加隐藏触发器:

myApp.config(['$tooltipProvider', function($tooltipProvider){
  $tooltipProvider.setTriggers({
    'mouseenter': 'mouseleave click'
  });
}]);

AngularUI v0.9.0 遭受this issue 的影响,这会导致删除按钮(例如)带有工具提示的错误(尽管仍然有效)。这已随后在 v0.10.0 中得到修复。

Here's a demo of it in action

【讨论】:

    【解决方案2】:

    我假设 ng-disabled 也会禁止任何事件在按钮上触发。然后,当您将一行下移到最后一行(或上移到第一行)时,在处理 mouseout 事件之前禁用事件处理程序。如果您在处理点击事件时“手动”触发mouseout 事件,它就会起作用。

    plunker

    这实际上可能是一个值得向 Angular 团队指出的错误。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-06
      • 2023-03-25
      • 1970-01-01
      • 2019-02-16
      • 1970-01-01
      相关资源
      最近更新 更多