КреатиВ.ТуТ

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

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


Вы здесь » КреатиВ.ТуТ » IPB 1.3 » Подсветка форумов/разделов


Подсветка форумов/разделов

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

Опрос

Как вам это?
А нам всё равно

0% - 0
Плохо

0% - 0
Удовлетворительно

0% - 0
Сойдет

7% - 1
Нормально

7% - 1
Хорошо

7% - 1
Отлично

78% - 11
Голосов: 14

1

Ну начнем. Мы будем редактировать шаблон:
Board Index Sections -> +-- Board Index Forum Row
Сохраните его, что бы можно было восстановить без проблемм.

Вы там найдете примерно такую строчку:

    <td class="row4" ><b><a href="{ibf.script_url}showforum={$info['id']}">{$info['name']}</a></b><br /><span class='desc'>{$info['description']}<br /><b>{$info['moderator']}</b></span></td>

Она отвечает за столбец "Форумы", я же его переименовал в "Разделы".

Итак - мы хотим поменять ему цвет фона при наведении мышью?
Находим в вышенаписанном коде это:

<td class="row4" >

и превращаем в это:

<td class="row4" onMouseOver="this.style.backgroundColor='Новый_код_цвета'" onMouseOut="this.style.backgroundColor=''">

Теперь мы хотим установить определенную картинку форуму? П.с. в этот скрипт уже включена смена цвета, так что выполняемые ранее действия не нужны. :)
Значит заменяем это:

<td class="row4" >

на это:

<td class="row4" onMouseOver="changeRowStyle(this,'yes','F{$info['id']}')" onMouseOut="changeRowStyle(this,'no','F{$info['id']}')">

Далее редактируем шапку форума, там размещаем фукнцию смены картинки:
Находим:

//-->
</script>

и перед этим вставляем это:

<!-- смена стиля строки -->
function changeRowStyle(TdObject,active,forumNumber) {
<!-- меняем цвет по активности -->
  if (active== "yes") {
    TdObject.style.backgroundColor = "Новый_код_цвета";

    <!-- Другие форумы -->
  }
  else {
    TdObject.style.backgroundColor = "";
    TdObject.style.backgroundImage = "";
  }
}

Далее выше на строчку от:

    <!-- Другие форумы -->

Вставляем этот код для каждого форума:

    <!-- Название форума -->
    if (forumNumber == "FX") {
       TdObject.style.backgroundImage = "url(Ссылка к картинке форума)"; 
    }

где X - номер форума
а остальное и так понятно: "Название форума" заменяем на какое хотим - это нужно для ориентировки вашей же. Ссылка к картинке соответственно.

Сохраняем и смотрим. Теперь другие ньюансы - картинка будет размножена по всей длинне таблицы, а я в своем случае это убрал и прижал её к правому краю, это делается так:

Заходим в стили css и находим там строчку похожую на это:

.row4 { background-color: ......

и заменяем на:

.row4 { background-color: #E4EAF2; BACKGROUND-POSITION: right; BACKGROUND-REPEAT: no-repeat; }

я не знаю какой у вас стандартный цвет, поэтому то, что выделено зеленым надо заменить на стандартный, он у вас есть в исходной строке.
То, что выделено красным - прижимает картинку вправо, то что синим - не дает повторяться картинке.

Пробуйте. Только заранее сохраняйте редактируемые шаблоны.

Если работает, то пишите в каком браузере.

Отредактировано ExperT (2006-02-03 19:13:33)

0

2

А номер форума где посмотреть можно?

0

3

2 Slavka:

showforum=138
Нажми на форум и то что цифры в конце это и есть номер форума)

0

4

Всё работает в экспловере)))) и в опера тоже)))

Спсиб

0

5

а как мне картинку растянуть на всю длину форума?

0

6

2 ИлюХа: На сколько я знаю фон растянуть нельзя.
Обычно его делают из 3 картинок - две из которых размножаются, а третья - в центре остается всегда. к примеру.

0

7

Получается не на всю длину. То есть при наведение подсвечивается только та часть, которая содержит тему форума и описание.  Столбцы "тем", "ответов", "обновления" остаются без подсветки :( . Сделал по первому способу. Без картинки.
Что не так?

0

8

2 Slavka: Всё правильно, я написал только для одной колонки.
Напишу позже для двух, а вы по аналогии делайте для всех.

0

9

У тебя цвет (код) подсветки при наведении какой? :)

0

10

2 ExperT:

Размножать в фотошопе?

0

11

2 Slavka: для колонки "Форумы"/"Разделы" у меня #C7D9F1.

2 ИлюХа: Не, ты не понял, смотри есть картинка [К] и есть к примеру у картинки правая и левая границы |, которые можно повторять всегда и от этого общая картинка не изменится.
То мы делаем 3 таблицы, у левой таблицы фоновой картинкой делаем |, у правой таблицы делаем |, а по середине ставим [К], по середине картинка не размножается, а по сторонам наоборот.

До растяжки имеет вид |[К]|
После растяжки имеет вид |||||[К]|||||

Андерстенд?

0

12

2 ExperT:
А как на примере это выглядит?

0

13

2 Slavka: Посмотрите на лого форума, оно до растяжки выглядит:
[K]|
А после расяжки выглядит:
[K]||||||||

0

14

Андерстенд?

неа :)

0

15

Ты бы на примере лого форума код показал) .

0

16

2 Slavka: Если будет пример, я напишу, сейчас пока нет. Но когда буду лого этого форума делать, то придётся воспользоваться и я напишу.

0

17

Крутть! Все работает (на доп скине)

0

18

Поэспериментировала :P
Конечн, долго не думая в качестве картинок взяла первое попавшееся под руку, самый простой вариант, который только может быть)

0

19

Здесь была использована типа картинка))) с фоном конечно долго не парилась))
Так что если подобрать хорошие картинки, должно быть все окейно) Главное что скрипт работает :)
2 ExperT: Молодец, все очень понятно и доступно расписано :D пасибоньки :)

Отредактировано elle (2006-02-07 09:01:43)

0

20

2 Slavka: Всё правильно, я написал только для одной колонки.
Напишу позже для двух, а вы по аналогии делайте для всех.

Как появится время - пожалуйста, выложи код для подсветки всех колонок.

Терпеливо ждём-с...  :D

0

21

итак...

Предупреждаю, скрипт я не проверял, у меня написано немного по другому, поэтому если не работает. Отправляйте в личку координаты, логин и пароль и я проверю.

все колонки.

они у вас выглядят так

<td class='row2'>

вы же превращаете в такие:

<td class='row2' id='F{$info["id"]}td'>

где вместо вставляете номер колонки, тобишь 1 или 2 или 3 и т.п. Для каждой разное число! Это расчитано на то, что колонок может быть много... в зависимости от форума.

Далее редактируем основную колонку "Форумы".
Если вы делали то, что написано раньше было мною, то она у вас выглядит так:

<td class="row4" onMouseOver="Что-то написано" onMouseOut="Что-то написано еще">

Итак, перед "Что-то написано", вставляем для каждой колонки подсветку которой мы хотим поменять, такую строчку

changeRow2Style('F{$info['id']}td','yes','F{$info['id']}');

Потом перед "что-то написано еще", вставляем для каждой колонки, такую строчку

changeRow2Style('F{$info['id']}td','no','F{$info['id']}');

где номера колонок, которые были обсуждены раньше.

Выглядеть это будет примерно так:

<td class="row4" onMouseOver="changeRow2Style('F{$info['id']}td1','yes','F{$info['id']}'); changeRow2Style('F{$info['id']}td2','yes','F{$info['id']}'); changeRowStyle(this,'yes','F{$info['id']}');" onMouseOut="changeRow2Style('F{$info['id']}td1','no','F{$info['id']}'); changeRow2Style('F{$info['id']}td2','no','F{$info['id']}'); changeRowStyle(this,'no','F{$info['id']}');">

Редактируем шапку форума, находим там

// -->
</script>

и перед этим вставляем это:

<!-- получение объекта по айди -->
function getTDbyid(id) {
itm = null;
if (document.getElementById) {
   itm = document.getElementById(id);
}
else if (document.all) {
   itm = document.all[id];
}
else if (document.layers) {
   itm = document.layers[id];
}
return itm;
}

<!-- смена стиля колонки -->
function changeRow2Style(TdId,active,forumNumber) {
<!-- меняем цвет по активности -->
  TDObject = getTDbyid(TdId);

  if  ( ! TDObject ) { return; }

  if (active== "yes") {
    TdObject.style.backgroundColor = "Новый_код_цвета";

    <!-- Другие форумы -->
  }
  else {
    TdObject.style.backgroundColor = "";
    TdObject.style.backgroundImage = "";
  }
}

Отредактировано ExperT (2006-02-18 15:40:43)

0

22

Блин, у меня (под оперой) нифига не работает :(

0

23

2 Igorix: А под эксплорером?

0

24

а там у меня вообще ни один скрипт не идет :)

0

25

2 Igorix: Могу и я ошибаться. Посмотрим, может другие поставят. Если тоже не получится, буду переделывать.

0

26

Увы, не работает ни в какую, ни приведённым выше способом, ни попыткой реконструировать твой способ... :(

Видимо, скрипт нуждается в доработке.

Отредактировано SilentSlider (2006-02-18 21:40:12)

0

27

2 SilentSlider: ссылку на форум дайти.

0

28

Хотя - я поторопился, реконструкция Вашего изначального способа всё-таки заработала!!  :yahoo:  (после работы над ошибками)... :rolleyes:

Адрес - пожалуйста: Ролевые Чат-Игры

Осталось только подкорректировать цветовую гамму, а так - работает замечательно!  :ok:  Многочисленные респекты автору!  :good:  :good:  :good:

Отредактировано SilentSlider (2006-02-18 22:20:47)

0

29

Работает, так работает.
В дальнейшем отредактирую всё красивее, потомучто скрипт мой еще не идеален.

Теперь будете рассказывать другим как сделали это :)

Отредактировано ExperT (2006-02-18 22:26:55)

0

30

Договорились!  :D

Тээкс, кому-что объяснить и помочь по данной теме?

0


Вы здесь » КреатиВ.ТуТ » IPB 1.3 » Подсветка форумов/разделов