Всем привет еще раз
Вот ломаю голову, как бы заставить popups всплывать разные окошка в разных скинах. Тоесть например для обычных страничек - скин Facebook, для авторизации - свой скин.
1. Искал как бы добавлять класс обертке:
Причем видно, что id у него нумерованный. По какому принципу это происходит - хз: подозреваю, что просто нумерует в порядке сканирования на предмет
Это пофиг, мне главное бы добавить класс этому элементу, чтобы хотя бы можно было бы зацепиться в CSS как то... Ну или задавать id самому (если это возможно) - так было бы гораздо кошерней.
2. Помучался я с предыдущим вариантом и решил помучаться со следующим. В общем глянул скины в модуле popups - ничего сложного. Подумал насоздавать там их. Вопрос как их менять на лету? Порылся в коде модуля, набрел на строки
<?php
// Allow skinning of the popup.
$skin = variable_get('popups_skin', 'Basic');
?>
Попробовал запихать в preprocess_page. Но опытным путем (и опять же порывшисть в модуле) понял, что на page модулю вообще пофиг! Он берет контент из node шаблона:
Запихал в preporcess_node строку
<?php
// скин для карты
if ($_SERVER['REDIRECT_URL'] == '/cities') {
variable_set('popups_skin', 'Facebook');
}
else {
variable_set('popups_skin', 'Basic');
}
?>
Работает не предсказуемо. Порылся немного еще в модуле, наткнулся на вот это:
<?php
if (!$reset && ($cache = cache_get('popups:skins')) && !empty($cache->data)) {
$skins = $cache->data;
}
?>
Кэширует
В общем как обмануть скатинку?
Хотелось бы либо класс вешать, либо айдишник, либо вообще корденально подсовывать разные скины (что менее вероятно по ходу дела: кеширование)...
Кто какой опыт имеет с попсами? Даже если будет не сильно связано с вопросом - все равно буду благодарен
Комментарии
style="height: 498px; top: 61.5px; left: 285.5px;"
надо кстати выдрать руки тем кто назначает стили прямо в шаблоне! Но дотянутся бы до них...
частично они правы, моргунчики устраняются тогда. по вашему вопросу советую статейку http://xandeadx.ru/blog/javascript
моргания?
вы мне советуете использовать уи диалог?
Кстати, добавил в закладки на всякий. Еще раз убеждаюсь, что jQuery UI - power!
можно так: http://www.shift-web.ru/perekluchenie-css-jquery-cookies, тока чуть напильником допилить
Это не друпал метод -- это п*здец. Как в зависимоти от урла выставить нужный парматр на стиль, наверное сами догадаетесь
Спасибо за статью: добавил в закладки. Я как раз думал недавно по поводу такого функционала на клиенте, вы мне дали готовое решение
согласен, но иначе я не представлял как "обмануть" popups на сервере.
у меня были уже мысли перетащить описанный в первом посту функционал на клиент. Только не думал над тем "как". С тегом
<link/>
- клево Даже не знал, что disabled - так отразится на стилях, хотя все довольно логичноВсем спасибо. Резюмирую: у popaps нет функционала, реализующего мои требования. Пилить модуль - не есть хорошо. Перетащим функционал в тему. Вопрос - решен.
в общем, как я уже писал тебе в личку, у
<link />
нет атрибута disabled. Поэтому то что мы проставляем в DOM disabled=true - не имеет ровным счетом никакого эффекта. Зато можно использоватьХех. Ну да, вариант. Я бы если честно зацепился за что то другое. Например за media Туда можно вписать фэйковый переключатель и по нему обрабатывать вкл\выкл.
p.s.: фаяфокс голимая редиска ):