Нужен совет специалиста CSS и JavaScript

C
На сайте с 20.02.2006
Offline
52
450

Здравствуйте Друзья!

Ситуация такая:

Есть блог,

http://www.fx-obzor.ru/?p=276

Пытаюсь написать для него обработчик на JavaScripte - что по клику он убирал правые меню навигации (слой #sidebar ) и расширял основное поле до границы сайта (слой #content)

При повторном клике соответственно все возвращал обратно.

---

Т.е. при нажатии ссылки получалось :

#sidebar {
visibility: hidden;
}

#content {
width:940px;
}

.postwrap {
width:940px;
}

При повторном нажатии все возвращалось бы в исходные значения

#sidebar {
visibility: visible;
}

#content {
width:650px;
}

.postwrap {
width:6500px;
}

Ссылка на кнопку для обработчика

<a href="javascript:void(0);" class="setLiquid"><span>SetPageWidth</span></a>

Примерный текст обработчика.

function setPagewidth(){

}

$(document).ready(function(){

$('.setLiquid').click(function(){

// Что написать сюда - я не знаю :(

});

});

---

Кто знает как сделать ? :idea: Пожалуйста помогите :)

---

Удачного дня и отличного настроения!

С уважением, Громаковский Евгений.

malls
На сайте с 08.08.2005
Offline
255
#1

У Вас:

$(document).ready(function()

это JQuery...

А по сути:

function switching() {

var obj = document.getElementByID("sidebar").style.visibility; // это типа чекаемый признак
if(obj == "hidden") { // если блок надо отобразить
document.getElementByID("sidebar").style.visibility = "visible";
document.getElementByID("content").style.width = "940px";
document.getElementsByClassName("postwrap").style.width = "940px";
}
else { // если блок надо скрыть
// * тут соответственно все наоборот * //
}

}

Только почему visibility = "visible", может Вы имели в виду:

display: none/block;

???

[Удален]
#2

ну да , с visibility:hidden ничего по размерам не изменится.

C
На сайте с 20.02.2006
Offline
52
#3

Попробовал сделать как порекомендовал malls.

Ничего не работает, скорее всего где-то Я допустил ошибку :( Перепробовал и так и так - все равно не работает :(

Вставляем в шапку

function switching() {

var obj = document.getElementByID("sidebar").style.visibility;
if(obj == "visible") { // если блок надо отобразить
document.getElementByID("sidebar").style.visibility = "hidden";
document.getElementByID("content").style.width = "940px";
document.getElementsByClassName("postwrap").style.width = "940px";
}
else {

document.getElementByID("sidebar").style.visibility = "visible";
document.getElementByID("content").style.width = "940px";
document.getElementsByClassName("postwrap").style.width = "940px";

}
}
</SCRIPT>

Код ссылки по которой надо кликать:

<a href="javascript:switching()" class="setLiquid"><span>SetPageWidth</span></a>

---

В ява скрипте - ноль! 😒 Кто-знает - Пожалуйста ткните носом..

malls
На сайте с 08.08.2005
Offline
255
#4

А дебагер чего пишет? А то экстрасенсы на другом канале работают.

И вообще: href="javascript:switching()" ущербный имхо путь,

onClick="switching()"

C
На сайте с 20.02.2006
Offline
52
#5

Я делаю все в блокноте

malls
На сайте с 08.08.2005
Offline
255
#6
Challenger:
Код ссылки по которой надо кликать:
<a href="javascript:switching()" class="setLiquid"><span>SetPageWidth</span></a>
---
В ява скрипте - ноль! Кто-знает - Пожалуйста ткните носом..
Challenger:
Я делаю все в блокноте

Ну чисто рыдал!!! Кликаете по ссылке тоже в блокноте? И ничего не происходит? Блин - проблема однако!

C
На сайте с 20.02.2006
Offline
52
#7

Кликаю в браузере, а код сайта правлю в блокноте, поскольку он разбит на шаблоны и модули, и вряд ли откроется в каком либо другом редакторе.

---

http://www.fx-obzor.ru - Адрес блога. В верхнем правом ряду белая кнопка (вида << >>) при клике на неё должен запускаться скрипт.

Ява Скрипт идет в самой вершине страницы - код ссылки в самом низу (для удобства поиска выделен <!-- ####### -->>

Challenger добавил 07.02.2009 в 16:22

var obj = document.getElementByID("sidebar").style.visibility;

Ошибка на странице
Объект не поддерживает это свойство или метод

Challenger добавил 07.02.2009 в 18:14

Все заработало! :)

Всем спасибо за помощь, особенно malls!

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий