Всплывающее окно при первом посещении сайта на jQuery
Представляю вашему вниманию гостевой пост от Сергея Предводителева, одного из разработчиков Арктической Лаборатории. * * * На некоторых сайтах необходимо при первом посещении показывать посетителю информацию во всплывающем окне. Это может потребоваться, например, для сайтов некоторых тематик, чтобы узнать возраст посетителя. Ещё один вариант использования ...
Комментарии (125)
ArcticModal — отличнейший, а главное правильный, скрипт мы успешно его использовали на одном крупном проекте, и он очень хорошо себя показал!
Очень легко и удобно кастомизировать.
Но вот почему CDN яндекса? Это просто желание автора или это продиктовано другими объективными причинами?
Я встречал объяснение, что к Яндексу пинг меньше, видимо, из-за этого. Но и с гугловским CDN нет проблем.
Доброе время суток ПафНутиЙ. Увас есть живой пример как спомощью ArcticModal отправить ajax запрос и получить ответ от сервера в само модульное окно. Я не смог не как это реализовать это, сколько попыток делал не как уменя не получилось. Вожможно я еще плохо осилил js или сам ArcticModal.
Ох блин, сколько я это искал, плюнул, а тут в RSS статья.
Спасибо! Еще и бесплатно. А есть возможность выбрать частоту изменения кукиса или сброса?
Написано же в статье: 365 — время жизни куки в днях.
В DLE не работает этот метод
Нет никакой связи этого метода и DLE. Вы что-то криво прикручиваете.
Почему выбран именно arcticModal? Тот же фансибокс умеет гораздо большее и гибко настраивается.
Потому что автор статьи является автором этого скрипта.
arcticModal как раз и написан, потому что остальные не такие гибкие :)
У fancybox и подобных есть несколько критичных минусов:
— не позволяют отображать прокрутку окна, если оно не помещается на экран, см. пример Окно с большой высотой: arcticlab.ru/arcticmodal/#examples;
— не позволяют открыть несколько окон;
— не удобная кастомизация оформления;
— не удобно работать с несколькими окнами.
Но у подобных плагинов есть один большой плюс — работа с изображениями :) Но это дело времени — когда-н., такой функционал появится и в arcticModal.
На многих движках уже используется jQuery, и иногда в ней используется функция jQuery. noConflict (); для того, чтобы не возникали конфликты с другими библиотеками. Поэтому, возможно нужно будет поменять «$» на «jQuery».
Чтобы проверить, используется ли функция jQuery. noConflict ();, просто откройте свою библиотеку, и в конце файла может быть записано: jQuery. noConflict ();.
Если так, тогда меняйте «$» на «jQuery».
пытаюсь к вордпрессу прицепить. не получается почему-то.
все как по инструкции.
вставил в хеад
и после боди в нужном месте и в разные пробовал код
Возможно не правильно указаны вот эти пути:
Где лежат файлы плагина?
Такая же проблема. Все подключил — работать не хочет. Перепроверял несколько раз.
При этом пробовал вызывать окна по кликам из примеров официального сайта — они работают.
Как быть?
Да, такая же ситуация!
о, как раз ищу такое. попробую, спасибо!
Не хочет работать, если есть возможность, подскажите пожалуйста.
Я уже с нуля все начал делать, что бы проверить работу только этого плагина.
И все равно, куки добавляет, но при их отсутствии модальное окно не появляется.
Все пути проверены, все файлы на месте.
вот код.
Буду очень признателен за помощь.
У вас
Да, все заработало, спасибо большое.
Есть ли способ показывать отдельную картинку в модальном окне при клике на ссылку? Сделал так:
Описанный вами способ работает. Но вообще arcticmodal пока плохо приспособлен для работы с картинками.
А по чему через аякс вылез мусор?
Значит что-то не так сделали. Нужно смотреть код.
Как выглядит сама ссылка, которая реализует Ваш способ открытия изображения в модальном окне?
Через ajax выдал мусор вместо картинки
Отличный скрипт думаю, но у меня (DLE) почему-то не пашет…
Или этот скрипт не дружит с JS скриптами DLE?
Скорее всего, что-то неправильно делаете.
странно, вроде все правильно. Попробую еще раз тогда.
У меня вообще не получается, даже в голой index. html /// есть сайты для примера? хочу код глянуть
Вот, посмотри код http://tumar.tv — view-source:http://tumar.tv/
Что там не так? не работает… может это из-за того что там новая версия скрипта arcticmodal?
Не знаю, что не так, консоль никаких ошибок не выдает. Примеры на сайте плагина.
ты видел да там код на http://tumar.tv? все как ты описал, ничего лишнего. исходники скрипта скачал на сайте плагина. Все сделал по пунктам как ты тут описал. На сайте плагина примеры видел, но мне интересно при первом посещении сайта чтоб автоматом открывался модальное окно. она же не открывается :(
Консоль выдаёт ошибку.
На 30й строке лишняя закрывающая скобка.
А вообще не плохо бы указывать доктайп и кодировку.
Поправьте примеры в статье — нет кода инициализации jQuery. Народ тупо скопировал — и ничего не работает!
Добавил.
Вот, чистый JS скрипт, ничего лишнего. Сделал занова не спеша все по порядке. добавил ДОКТАЙП, ТЕЛО все по стандарту HTML tumar.tv/
все равно не работает. что тут не так? Может сделаешь ты рабочую версию и залешь сюда в архиве?
Проблема кроется в слове
wasVisit
(которое встречается в коде 2 раза). С ним какая-то мистика, если его поменять на любое другое, то все работает.Никакой мистики. Имя куки не чувствительно к регистру по стандарту. Браузер возвращает куки с названием в нижнем регистре. Поэтому код и не работает.
О теперь вижу эту окошку, а теперь куки блин не работают, т. е кажыдй раз это окошка появляется.
Хотя нет. Просто ты изначально что-то неправильно сделал, но кука при этом сохранилась в браузере, поэтому после того ничего и не показывалось. Почисти куки в браузере. У меня все работает на твоем сайте.
Вот теперь все работает как надо :)
Спасибо) в итоге ошибка у меня была, или у Вас?
Сам не понимаю, всё запуталось.
Я пробовал сделать что-то, как написали в комментарии 17. От туда остался лищний код. Сча убрал, все равно также. Думаю и без доктайпа и кодировки должен работать.
Ну, а BODY? Где он?
Пишите корректный HTML. А доктайп — это вообще штука обязательная, без неё плохо :)
Так у вас нет кода инициализации jQuery:
блин у меня нихрена ничего не получается :(
Можешь в мне чисто на index. html сделать рабочую которая у тебя будет работать, и в архиве мне отправить?
Заранее спасибо.
jq 1.9.1 конфликтует с DLE 9.8. после подключения данного скрипта отключаются родные скрипты дле при добавлении новости (более не смотрел, этого хватило), без подключения (да и с ключением) окно не всплывает
Здравствуйте! Подскажите что нужно прописать, что бы окно заново открывалось после закрытия браузера? Я так понимаю нужно время кука поставить как-то…
Все никак не получается =(начинаю биться головой о клавиатуру. invite@bannertender.com
Извиняюсь что не атм пишу, но можешь подсказать ка кназываеться или где откопать переключение как у тебя в сайдбаре справа например «Последние, популярные, рубрики» хочется сделать такое на своем но для комментариев чтоб можно было переключаться между сайтовыми вконтактовскими и фейсбука
Универсальный jQuery-скрипт для блоков с вкладками
большое спасибо
Спасибо большое за классный поп-ап!
Меня интересует как изменить инструкцию к кукам, чтобы окно больше не показывалось человеку, который отправил форму нажав «Отправить». -Куки срабатывают только когда форма была отправлена. И разумеется окно показывалось только при заходе на сайт, а при переходе на другие страницы сайта больше не появлялось.
Например, для случая с окном «подписаться на новости».
Это можно какими-то средствами реализовать?
А как сделать время хранения кук в часах, а не в днях?
В часах нельзя, только в днях.
Подскажите пожалуйста, а как сделать, чтобы окно открывалось с задержкой? Спасибо за помощь…
Вот эту част кода:
заворачиваем вот так:
10 000 — это 10 секунд, время, через которое всплывет окно.
Спасибо огромное за помощь и оперативный ответ…
Только я вставил код, сделал 5 секунд, чтобы увидеть быстрее результат, но к сожалению окно не встплыло вообще… что я не так сделал? Код получился такой
(function ($) {
$(function () {
// Проверим, есть ли запись в куках о посещении посетителя
// Если запись есть — ничего не делаем
if (!$.cookie ('was')) {
setTimeout (function () {
// Покажем всплывающее окно
$('#boxUserFirstInfo').arcticmodal ({
closeOnOverlayClick: false,
closeOnEsc: true
});
}, 5000)
// Запомним в куках, что посетитель к нам уже заходил
$.cookie ('was', true, {
expires: 1,
path: '/'
});
})
})(jQuery)
После строки:
Пропущена закрывающая скобка:
Спасибо большое!!! Вы самый чуткий специалист… !!!
Отлично! А как сделать, чтобы модальное окно показывалось посетителю при попытке ухода с сайта «на прощание»?