На готовом сайте пытаюсь подключить дополнительный скрипт для вывода своего всплывающего окна.
css прописан.
Код сообщения занесен в блок и обернут в div нужного класса.
Классу изначально присвоено display: none;
скрипт собственно не особо сложный - по клику мыши необходимо закрыть окно.
Сам скрипт
$('#popup__toggle').click(function() {
myp.css('display', 'block');
});
myp.click(function(event) {
mye = event || window.event;
if (mye.target == this) {
$(myp).css('display', 'none');
}
});
$('.popup__close').click(function() {
myp.css('display', 'none');
});
был обернут конструкцией
//код выше
}) (jQuery);
После скрипт был подсключен через info. Кеш сброшен. В исходном коде страницы все отобразилось.
При тестах свойство основного div менял на display: block;
Блок всплывал, но закрываться не хотел. Как и отрываться при none по клику на кнопку.
Из чего сделал вывод, что данный скрипт просто не отрабатывается.
Пытался вставить его в блок напрямую - нифига. Однако скрипты информеров в другом блоке работают нормально (при этом выставлен у меня для них спецфильтр по аналогии с FullHTML, который позволяет исполнять код, но не парсит СКEditor-ом лишнее).
Где тут собака порылась?
Тест скрипта без обертки проводился на сайте http://jsfiddle.net/ - удобный ресурс оказался для подобных тестов.
З.Ы. На другом сайте, но сделанным на modx revo, эта конструкция вполне себе заработала. Даже с работой с кукисами, чтобы раз нажав на закрыть, пользователь больше это окно не получал.
Комментарии
Drupal.behaviors.myModule = {
attach: function (context) {
...
}
};
})(jQuery);
Блин. И снова ларчик открывался просто.
Надо было еще обернуть код для вызова его на странице.
$(document).ready(function() {
// код
});
})(jQuery);
З.Ы. Попробую шаблоном предложенным выше. Возможно, это корректнее, чем у меня.
Предложенный
способ работает.Вопрос по окошку закрыт.
Теперь буду навешивать на это дело обработчик кукисов.
Спасибо.
Да вот жеж пожалуйста.