Как показать simpleTip, только если выполняются определенные условия? - PullRequest
1 голос
/ 18 марта 2011

Я работаю над своим первым проектом jquery и у меня есть вопрос, касающийся плагина simpletip. В основном у меня есть календарь, в котором пользователь может щелкать по различным названиям собраний, и соответствующие даты закрашиваются определенным цветом. Затем я использую подсказку для отображения более подробной информации о собрании, когда пользователь наводит указатель мыши на эту дату.

То, что я хочу, чтобы подсказка отображалась только в том случае, если ячейка закрашена или включена. Когда календарь пуст и встречи не активированы, я не хочу показывать все подсказки.

Я попытался использовать оператор if с .mouseover () - сначала это работает, когда ячейки выключены, простой подсказки нет. После того, как собрание включено и окрашено, первое наведение мыши ничего не делает, затем второе наведение мыши показывает простую подсказку, а затем простая подсказка остается активной даже после выключения ячейки.

        $("#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';
   }
});

1 Ответ

0 голосов
/ 18 марта 2011

Я не знаком с 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'
          });
    });

Этот селектор сработал бы, если ваш идентификатор jan3 и этот элемент имеет класс stateOn.Пока вы пишете код для правильного переключения состояний, jquery позаботится о том, чтобы запустить нужный элемент.

...