1

我正在处理我的第一个 jquery 项目,并且对 simpletip 插件有疑问。我基本上有一个日历,用户可以在其中单击不同的会议标题,并且相应的日期会以某种颜色显示出来。然后,当用户将鼠标悬停在该日期上时,我将使用 simpletip 显示有关会议的更多详细信息。

我想要的是仅在单元格被着色或“打开”时才显示简单提示。当日历为空白且未激活任何会议时,我不希望显示所有简单提示。

我尝试使用带有 .mouseover() 的 if 语句 - 这首先有效,当单元格关闭时,没有简单提示。打开会议并着色后,第一个鼠标悬停不做任何事情,然后第二个鼠标悬停显示 simpletip,然后即使单元格关闭,simpletip 仍然保持活动状态。

        $("#jan3").mouseover(function() {
           if ( meeting1 = "on" ) {
              $(this).simpletip({  
                 content: '<b>Meeting</b><br/>&nbsp;9:00-11:00<br/>&nbsp;Some Room'
              });
           }
        });

希望这是有道理的......请帮忙!

先感谢您

*编辑:这是打开和关闭会议的按钮之一的示例...

$(".button1").click(function() {  
   if ( meeting1 == "off" ) {
      $(".meeting1").stop().animate({ backgroundColor: "#009460", color: "white" }, 1000);
      $(".meeting1").css("cursor", "pointer");
      plsc = 'on';
   }
   else {
      $(".meeting1").stop().animate({ backgroundColor: "white", color: "black" }, 1000);
      $(".meeting1").css("cursor", "default");
      plsc = 'off';
   }
});
4

1 回答 1

0

我不熟悉 simpleTip,但您描述的情况很熟悉。

最简单的解决方案是使用类来表示哪些条目是开/关的。并将您的 simpletip 功能注册到仅打开的功能。您可以使用 jquery live 让选择器使用状态更新自身

    $("#jan3.stateOn").live('mouseover', function() {
          $(this).simpletip({  
             content: '<b>Meeting</b><br/>&nbsp;9:00-11:00<br/>&nbsp;Some Room'
          });
    });

如果您的 ID 是jan3并且该项目的类别为 ,则此选择器将触发stateOn。只要您编写代码来正确切换状态,jquery 就会负责触发正确的项目。

于 2011-03-18T17:21:48.677 回答