多个jquery ui工具提示定位

时间:2015-06-21 22:32:54

标签: javascript jquery jquery-ui

我正在为我的项目使用Jquery UI工具提示,并且想要为整个文档定位工具提示,除了以某种方式具有类的分区。

$( document ).not(".t_l_overview").tooltip({
      position: {
        my: "center top",
        at: "center bottom+5"
      },
      show: {
        duration: "fast"
      },
      hide: {
        effect: "hide"
      }
 });

$(".t_l_overview").tooltip({
      position: {
        my: "left+15 center",
        at: "right center"
      },
      show: {
        duration: "fast"
      },
      hide: {
        effect: "hide"
      }
 });

问题是,如果我一次使用其中任何一个,它正在工作但两个都不能一起工作。如果我在代码中使用两者,则工具提示仅应用于具有类t_l_overview的分区。任何想法,我可能做错了什么,有什么想法来解决它?

1 个答案:

答案 0 :(得分:1)

问题在于您的not选择器。 $(document).not(".t_l_overview")是空数组,因此您实际上并未设置"默认"。

如果要选择所有没有类t_l_overview的DOM元素,可以使用以下语法:

$("*").not(".t_l_overview").tooltip({ ... });

$("html").not(".t_l_overview").tooltip({ ... });

$("body").not(".t_l_overview").tooltip({ ... });

最后一个可能就是你想要的,因为我猜你不关心在<head><script>元素上设置工具提示。

您还可以设置默认工具提示并覆盖特定元素集,如下所示:

$(document).tooltip({ ... }); // default
$(".t_l_overview").tooltip({ ... }); // override for .t_l_overview

tooltip()的后续调用将覆盖已在这些元素上设置的任何内容。