Прикрутить модальное окно

#1 20 сентября 2012 в 17:36
Здравствуйте уважаемые.
По этому уроку хочу сделать регистрацию в модальном окне — урок
После проделанных манипуляций никакого окна не появляется...
Что сделал, по шагам:
1. В файл template.php вместо
  1. <span class="register"><a href="/registration">Регистрация</a></span>
вставил
  1. <a href="/registration" rel="#overlay">
  2. <button type="button">Регистрация</button>
  3. </a>
  4. <div class="overlay" id="overlay">
  5. <div class="wrap"></div>
  6. </div>
.
2. Подключил jQery в файле template.php —
  1. <script src='/templates/_default_/js/jquery.js' type='text/javascript'></script>
.
3. В файл style.css добавил стили.
4. В template.php перед </body> вставил
  1. <script>
  2. $(function() {
  3. $("a[rel]").overlay(function() {
  4. var wrap = this.getContent().find("div.wrap");
  5. if (wrap.is(":empty")) {
  6. wrap.load(this.getTrigger().attr("href"));
  7. }
  8. });
  9. });
  10. </script>
.
Что упустил или сделал не правильно? scratch

P.S. По ссылке переходит на главную. В общем урок называется "Форма обратной связи в модальном окне", через поиск можно найти.

P.P.S Картинки и файл jquery закинул в нужные папки.
#2 20 сентября 2012 в 19:45
Ссылка, (этого урока) -скопировать ruseller.com/lessons.php?rub_id=29&id=283
jQery подключена в шаблоне (всегда), и не надо ее второй раз подключать.
#3 20 сентября 2012 в 22:58

jQery подключена в шаблоне (всегда), и не надо ее второй раз подключать.

oll
Пробовал отключать, не работает. scratch
#4 20 сентября 2012 в 23:13
SpideR-KOSS, forum.php.su/printpage.php?forum=40&topic=1643#
ваша проблема

код не работает с более свежей версией jquery
#5 21 сентября 2012 в 09:11

код не работает с более свежей версией jquery

SJen
Это печально, и как понимаю выхода два — переписывать код, либо переходить на более старую версию jquery?
#6 21 сентября 2012 в 11:17
SpideR-KOSS, на более старую версию не стоит переходить — может же инстант перестать работать..
а код переписать — это вариант.

А было же где-то в блогах решение со всплывающим окном регистрации или не нравится тот вариант?
#7 21 сентября 2012 в 11:33

А было же где-то в блогах решение со всплывающим окном регистрации или не нравится тот вариант?

SJen
Мне не принципиально решение, просто хочу немного вникнуть как это все работает, и как заставить это работать.
В общем хочу научиться. smile
#8 21 сентября 2012 в 13:24
Скачайте этот файл:
instantcms.ru/users/files/download2521.html
В нем два файла .html закиньте в папку шаблона

потом в файле template.php замените эти строчки:

  1.  
  2. <div class="mod_user_menu">
  3. <span class="register"><a href="/registration">Регистрация</a></span>
  4. <span class="login"><a href="/login">Вход</a></span>
  5. </div>
  6.  
на эти:

  1.  
  2. <div class="mod_user_menu">
  3. <span class="register"><a href="/templates/_default_/regis.html" class="nyroModal">Регистрация</a></span>
  4. <span class="login"><a href="/templates/_default_/avtor.html" class="nyroModal">Вход</a></span>
  5. </div>
  6.  
  7.  
Только если шаблон не дефолтный пути поправить, стили редактируются в файле nyromodal.css

Ничего стороннего в этом решении не используется только то что есть в системе.
#9 21 сентября 2012 в 14:57
Skaz, т.е сейчас регистрация должна открываться в всплывающем окне?
Странно, у меня она открывается на новой странице.
#10 21 сентября 2012 в 15:07
SpideR-KOSS, все должно работать, может кэш?
#11 21 сентября 2012 в 15:10


SpideR-KOSS, все должно работать, может кэш?

skaz
Кэш почистил, все также.
Странно, надо смотреть в чем причина.
#12 21 сентября 2012 в 15:19
Поставил движок с нуля — открывает на новой странице. scratch
#13 21 сентября 2012 в 15:59
Естественно, что ничего работать не будет так как в шаблоне default плагин, обеспечивающий работу всплывающих окон подключается только для администратора:
  1. <?php if($inUser->is_admin){ ?>
  2. <script src="/templates/_default_/js/nyromodal.js" type="text/javascript"></script>
  3. <?php } ?>
Для того чтоб все заработало нужно вынести подключение скрипта и относящегося к нему файла стиля за пределы условия
  1. <?php if($inUser->is_admin){ ?>
#14 21 сентября 2012 в 16:04
Кстати и первый вариант не требует никаких изменений версии JQuery. Дело в том, что файл jquery.js, который прилагается к уроку на самом деле содержит в себе еще и библиотеку JQueryTools.
#15 21 сентября 2012 в 16:19


Для того чтоб все заработало нужно вынести подключение скрипта и относящегося к нему файла стиля за пределы условия

Pasha
Спасибо. Вынес подключение за пределы условия и все работает. v
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.