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

我想要的是仅在单元格为彩色或“开”的情况下显示的simpletip。当日历为空白并且没有激活会议时,我不希望所有简单提示都显示出来。

我尝试过将if语句与.mouseover()一起使用-最初,当单元格关闭时,这没有任何提示。会议打开并着色后,第一个鼠标悬停不执行任何操作,然后第二个鼠标悬停显示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';
   }
});

最佳答案

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

最简单的解决方案是使用类来表示打开/关闭的条目。并将您的simpletip函数注册到仅启用的函数。您可以使用实时jQuery使选择器使用状态进行自身更新

    $("#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就会为正确的项目触发触发。

08-19 17:21