Единый форум поддержки

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Единый форум поддержки » Корзина » Выпадающее меню по клику со сменой стиля при активном статусе


Выпадающее меню по клику со сменой стиля при активном статусе

Сообщений 1 страница 14 из 14

1

Доброго времени суток!
За основу было взято выпадаюее меню по клику. Стиль и оформление передалал, но возникла необходимость, чтоб при активном меню, оформление кнопки меню менялось.

Само меню - это в окно html-верх:

Код:
<style> /* Стиль всплывающего меню */
.splLink {width: 190px; height: 20px; border: 2px solid yellow; text-align: center; font-family: Gothic century; font-size: 14px; font-weight : bold; padding : 5px 5px 5px 5px; color : #c3fbfd; margin-left: 15px; margin-top: -10px;}
.splCont {height: auto; width: 300px; background: #479cc8; padding: 5px; z-index: 1000; margin-top: 10px; border: 2px solid #2727dd; font-size: 12px; font-family: Lucida Sans Unicode; text-align: center; color : #fbf9e1;}

 /* Тень, Прозрачка и Скругление углов во Всплывающем меню */

.splLink {
    border-radius:8px;
    -webkit-border-radius:8px;
    -khtml-border-radius:8px;
    -moz-border-radius:8px;
    -o-border-radius:8px;

     box-shadow:0px 5px 18px #003A70;
    -webkit-box-shadow:0px 5px 18px #003A70;
    -khtml-box-shadow:0px 5px 18px #003A70;
    -moz-box-shadow:0px 5px 18px #003A70;
    }

.splCont {background-color: transparent !important; background-image: url("https://forumupload.ru/uploads/000e/a7/ab/34-1.png");
    border-radius:8px;
    -webkit-border-radius:8px;
    -khtml-border-radius:8px;
    -moz-border-radius:8px;
    -o-border-radius:8px;

     box-shadow:0px 5px 14px #8B6C52;
    -webkit-box-shadow:0px 5px 14px #8B6C52;
    -khtml-box-shadow:0px 5px 14px #8B6C52;
    -moz-box-shadow:0px 5px 14px #8B6C52;
    }

.splCont:first-letter {
    font-family: "Times New Roman", Times, serif; /* Гарнитура шрифта первой буквы */
    font-size: 200% !important; /* Размер шрифта первого символа */
    color: #88f4fe; /* Красный цвет текста */
   } /* Конец Стиля всплывающего меню */
</style>

Это в объявлении :

Код:
<!-- меню в объявлении  -->
<table style="width: 98%">
<tr>

<td><DIV><div class=splLink>Инфо пользователя</div>
<DIV style="DISPLAY: none; position: absolute;" class=splCont>

Здесь должно быть информационное табло  пользователя

</DIV></DIV></td>

<td><DIV><div class=splLink>Последние сообщения</div>
<DIV style="DISPLAY: none; position: absolute;" class=splCont>

Здесь отображаться последние 5 сообщений

</DIV></DIV></td>

<td><DIV><div class=splLink>Третий контейнер</div>
<DIV style="DISPLAY: none; position: absolute;" class=splCont>

Ваш Контент 3

</DIV></DIV></td>

<td><DIV><div class=splLink>Четвертый контейнер</div>
<DIV style="DISPLAY: none; position: absolute;" class=splCont>

Ваш Контент 4

</DIV></DIV></td>

</tr>
</table>

И сам скрипт:

Код:
<!--Спойлер - контейнер-->
<script type="text/javascript"> 
  $(document).ready(function(){
    $('.splLink').click(function(){
      $(this).parent().children('div.splCont').toggle('normal');
      return false;
    });
  });
</script>

Нужно модифицировать скрипт, чтоб менялось оформление кнопок, что-то типа статуса .active, например в стиле прописать:

Код:
.splLink {width: 190px; height: 20px; border: 2px solid yellow; text-align: center; font-family: Gothic century; font-size: 14px; font-weight : bold; padding : 5px 5px 5px 5px; color : #c3fbfd; margin-left: 15px; margin-top: -10px;}

.splLink .active {width: 190px; height: 20px; border: 2px solid red; text-align: center; font-family: Gothic century; font-size: 14px; font-weight : bold; padding : 5px 5px 5px 5px; color : #c3fbfd; margin-left: 15px; margin-top: -10px;}

И чтоб скриптом выполнялась смена статусов.
Просьба помочь с модифицированием скрипта.

Отредактировано Кофеман (Вт, 15 Мар 2011 11:51:29)

0

2

Кофеман написал(а):

И сам скрипт:

Попробуй поменять скрипт на такой:

<!--Спойлер - контейнер-->
<script type="text/javascript">
  $(document).ready(function(){
    $('.splLink').click(function(){
      if($(this).parent().children('div.splCont').css('display')=="none"){
      $(this).addClass("active")}
      else $(this).removeClass("active")
      $(this).parent().children('div.splCont').toggle('normal');
      return false;
    });
  });
</script>

Ток селектор  для активной кнопки в css писать слитно

.splLink.active

+1

3

Deff, спасибо! Все отлично работает.

Еще попутно вопрос про картинки в кнопках. Так сказать усложнение.)
Если в самой таблице вместо текста вставить картинку, то при клике, можно чтоб она менялась этим же скриптом? Или все же картинку нужно прописывать фоном контейнера div в селекторе active и в простом, а в таблице объявления оставлять пустое место?

0

4

Кофеман Ну ставь вместо картинку бекграундом в .splLink а в .splLink.active ставь бекграунд уже другой картинкой
Либо просто картинку фона(или просто картинку) не меняешь (но она полупрозрачная) - меняешь только цвет бекграунда
Самое крутое - менять статическую на подвижную gif ку

Отредактировано Deff (Чт, 17 Мар 2011 10:47:08)

0

5

Deff, спасибо! Я в принципе так и думал.)

И еще вопрос: уже, так сказать, по наполнению содержимого - есть скрипт информационного табло пользователя, его можно модифицировать так, чтоб это табло было внутри выпадающего окна?
В наглую поставив его в выпадающий контейнер - не выходит.)

0

6

Кофеман Там есть решение подобной задачи для инвизиблмана в теме сайдбаре через пун-майн

там нужно создать  внутри менюшки div блок с тем же id что и в сайдбар мы ставили и тогда скрипт тот же подойдёт

Отредактировано Deff (Вт, 15 Мар 2011 14:59:24)

0

7

Deff, аха, понял, спасибо! Попробую.

0

8

Deff, все сделал, все получилось, но есть пара вопросов, как к автору подгонки скрипта..

1. Таблицу можно и самому переформатировать, это не сложно, но как лучше сделать, чтоб оформление этой таблицы инфо блока можно было сделать своим стилем?
Я говорю о строке в скрипте:

Код:
arr[i].innerHTML="<div class=category><h2>Информационное табло</h2><div class=container>..... и т.д.

В ней используются общефорумские стили для селекторов category и container. Но суть в том, что если ставить инфо блок просто в Объявление, то оформление выходит как у форумского инфобокса, а здесь, внутри меню, некоторые параметры игнорируются (нет фона заголовков категорий), но при этом используются общие настройки шрифтов и их цветов.

я понимаю, что можно взять и скопировать стили этих селекторов отдельно и назвать их, например, punbb .tablo и там все прописать. Но будет ли это корректно?

2. Можно ли где-то видеть, какие еще параметры инфы пользователя можно вывести скриптом? Я говорю о переменных типа: UserAvatar, UserTitle и т.п., которые используются в скрипте.

0

9

Кофеман написал(а):

если ставить инфо блок просто в Объявление, то оформление выходит как у форумского инфобокса, а здесь, внутри меню, некоторые параметры игнорируются (нет фона заголовков категорий), но при этом используются общие настройки шрифтов и их цветов.

Ну дописать селекторы к старым в стиле

типо там было #pun-main .category h2

А тут будет .splCont .category h2  - этот селектор, через запятую добавить к старым,* либо самому прописать заново стиль для этих селекторов, взявши за основу старые( либо исключительно свой

аналогично наверн и для .category .container
типо
#pun-main .category .container,.splCont .category .container

Отредактировано Deff (Ср, 16 Мар 2011 08:45:38)

0

10

Кофеман написал(а):

2. Можно ли где-то видеть, какие еще параметры инфы пользователя можно вывести скриптом? Я говорю о переменных типа: UserAvatar, UserTitle и т.п., которые используются в скрипте

Код:
BoardID - номер форума (?).
BoardCat - номер раздела в каталоге (?). 
BoardStyle - стиль пользователя.
GroupID - группа пользователя.
GroupTitle - название групы.
GroupUserTitle - ранг пользователя.
UserID номер пользователя на форуме.
UserLogin логин пользователя.
UserName - имя пользователя.
UserTitle - статус пользователя.
UserSex - пол пользователя.
UserAge - возраст пользователя.
UserBirthDate - день рождения пользователя.
UserAvatar - аватар пользователя.
UserRegistered - дата регистрации пользователя (здесь и далее отсчёт времени - в секундах от UTC).
UserPosts - число сообщений пользователя. 
UserLastPost - время последнего сообщения.
UserLastVisit - время последнего визита.
UserTotalTime - общее время, проведённое на форуме.
UserRespectPlus - число положительных оценок в "Уважении" пользователя.
UserRespectMinus - число потрицательных оценок в "Уважении" пользователя.
UserPositivePlus - число поставленных пользователе "плюсов".
UserPositiveMinus - число поставленных пользователем минусов.

+1

11

rps, спасибо! Буду соображать.)

К Вам так же вопрос еще есть, как к автору скрипта последних сообщений на форуме.
Можно этот скрипт переделать так, чтоб 5 последних сообщений выводились в выпадающем меню в объявлении?

Отредактировано Кофеман (Ср, 16 Мар 2011 21:05:33)

0

12

Кофеман написал(а):

К Вам так же вопрос еще есть, как к автору скрипта последних сообщений на форуме.

Я не автор.

Кофеман написал(а):

Можно этот скрипт переделать так, чтоб 5 последних сообщений выводились в выпадающем меню в объявлении?

Можно, но не сегодня.

0

13

rps написал(а):

Можно, но не сегодня.

Добро, не горит.) подожду.

ЗЫ. а в скрипте пишут - 10 последних сообщений от rps.)

0

14

Кофеман написал(а):

пишут

Пишет, Дефф, это он когда-то туда комментарий этот приделал.

0


Вы здесь » Единый форум поддержки » Корзина » Выпадающее меню по клику со сменой стиля при активном статусе