【问题标题】:jQuery Tools -> Tooltip destroy method?jQuery 工具-> 工具提示销毁方法?
【发布时间】:2011-02-02 21:19:19
【问题描述】:

除了 jQuery UI 日历之外,我还在表格中使用 Flowplayer 的 jQuery Tools 框架(特别是工具提示插件)。

表格的每一行都可以在其上方和下方插入一行。

执行此操作时,我正在克隆单击的对象(事件和对象)并将其直接插入上方或下方。

添加新行后,我刷新表格,为我的元素生成新 id,重新初始化日期选择器,并尝试重新初始化工具提示。

我正在寻找一种方法从实例中完全销毁它并重新应用它。

我正在寻找类似于datepicker('destroy') 方法的东西。

$j($editRow).find('input.date').datepicker('destroy').datepicker({dateFormat: 'mm-dd-yy', defaultDate : defaultDateStr});

我已经尝试过:

  1. 取消绑定鼠标悬停和焦点事件:重新调用工具提示时,它会自动转到创建它的对象。

  2. 隐藏工具提示 DOM 元素,从目标中移除工具提示对象,然后重新应用它。与 (1) 发生同样的事情

我可以自己创建销毁方法吗?

【问题讨论】:

  • 当您尝试解除工具提示的绑定时,您能解释一下“自动选择制作它的对象”是什么意思吗?
  • 你能发布你用来调用工具提示的代码,以及你用来尝试解绑它们的代码吗?

标签: javascript jquery jquery-tools tooltip destroy


【解决方案1】:

我尝试了 kwicher 的方法,但无法正常工作。尽管我试图更改缩小后的代码,但我并不完全确定是否找到了正确的位置进行更改。

不过,我确实让它工作了。 ValidationFailed 是我应用于所有输入字段的类,这些字段也应用了工具提示。

$('.validationFailed').each(function (index) {
    $(this).removeData('tooltip');
});

$('.tooltip').remove();

我尝试了几种不同的方法,这是唯一允许我在删除后添加额外工具提示的组合,而不会阻止新工具提示正常工作。

据我所知,工具提示类删除处理摆脱了实际的工具提示 div,其事件也直接连接。 .removeData 允许将来重新绑定工具提示。

【讨论】:

    【解决方案2】:

    根据您的想法和汤姆的回答,我发现三件事是必要的:

    1. 从工具提示目标元素中删除“工具提示”数据
    2. 从工具提示目标元素中取消绑定事件侦听器
    3. 删除元素(假设您使用此工具提示方法以允许在您的提示中使用任意 HTML)

    所以,这个简单的函数应该可以解决问题。只需传递一个 jQuery 对象,其中包含您要销毁的工具提示的目标元素。

    function destroyTooltips($targets) { 
        $targets.removeData('tooltip').unbind().next('div.tooltip').remove();
    }
    

    【讨论】:

      【解决方案3】:

      如果您仍然需要它,您可以执行以下操作: - 在tooltip实现文件中添加如下函数

      destroy: function(e) {
              tip.detach();
              }
      

      某处:

      $.extend(self, {
      ...
      

      我在最后一个原生函数之后。

      然后当你想移除尖端时,开火:

      $(.tip).data('tooltip').destroy();
      

      它应该可以解决问题

      K

      【讨论】:

        【解决方案4】:
           if($element.data('ui-tooltip')) {//if tooltip has been initialized
               $element.tooltip('destroy');
           }
        

        【讨论】:

          【解决方案5】:

          也许为时已晚... ;-)
          但是在这里你可以找到'tooltip'的所有方法:http://www.w3schools.com/bootstrap/bootstrap_ref_js_tooltip.asp

          我把提示留给可能路过的人,他们有同样的问题:处理不同的“工具提示”动作/对象。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多