Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Изменить стиль у родителя! 
:(
    Опции темы
hostsid
  Дата 3.5.2011, 05:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 30.9.2008

Репутация: нет
Всего: нет



Ничегошеньки не понимаю в Javascript, но очень надо. Помогите пожалуйста!

Есть страница. На ней может быть контейнер (class="3") с содержимым "-". В этом случае после полной загрузки страницы надо выключить отображение его прародителя(class="1"):

Код

<div class="1">
   <div class="2">
      <div class="3"> - </div>
   </div>
</div>


Сделал так:

Код

<head>
<script language="javascript1.5">
function dn(){
if (div.innerHTML = "-") 
    {this.parentNode.parentNode.style.display = "none;"}
}
</script>
</head>

<body onLoad="dn();">
<div class="1">
   <div class="2">
      <div class="3"> - </div>
   </div>
</div>
</body>


Не работает. Что не так? Подскажите пожалуйста!

Это сообщение отредактировал(а) hostsid - 3.5.2011, 05:55
PM MAIL ICQ   Вверх
WolfAlone
Дата 3.5.2011, 09:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


В экстазе
***


Профиль
Группа: Завсегдатай
Сообщений: 1010
Регистрация: 16.9.2008
Где: Рай

Репутация: нет
Всего: 5



Вы принципиально хотите использовать чистый JavaScript или допускается применение какой-либо библиотеки (JS-фреймворка)? В случае применения например, той же JQuery эта и многие другие вопросы решаются очень быстро и без "заточки" кода под каждый конкретный браузер.


--------------------
И сказал Бог: "Тогда я построю свой мир с блэк-джеком и шлюхами!"

Ф топку Ubuntu, Debian наше фсё!

(с) Евгений Вольф
PM MAIL WWW ICQ Skype   Вверх
Котокобра
Дата 3.5.2011, 14:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 147
Регистрация: 26.11.2009

Репутация: 0
Всего: 4



<head>
<script language="javascript1.5">
function dn(x){
if (x.innerHTML = "-") 
    {x.parentNode.parentNode.style.display = "none;"}
}
</script>
</head>
<body onLoad="dn(document.getElementById('d'));">
<div class="1">
   <div class="2">
      <div id="d" class="3"> - </div>
   </div>
</div>
</body>

Это сообщение отредактировал(а) Котокобра - 3.5.2011, 14:06
PM MAIL   Вверх
hostsid
Дата 3.5.2011, 14:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 30.9.2008

Репутация: нет
Всего: нет



Цитата(Котокобра @ 3.5.2011,  14:04)
<head>
<script language="javascript1.5">
function dn(x){
if (x.innerHTML = "-") 
    {x.parentNode.parentNode.style.display = "none;"}
}
</script>
</head>
<body onLoad="dn(document.getElementById('d'));">
<div class="1">
   <div class="2">
      <div id="d" class="3"> - </div>
   </div>
</div>
</body>

не подходит. нет возможности присвоить елементу АйДи. =(

Добавлено через 1 минуту и 41 секунду
Цитата(WolfAlone @ 3.5.2011,  09:51)
Вы принципиально хотите использовать чистый JavaScript или допускается применение какой-либо библиотеки (JS-фреймворка)? В случае применения например, той же JQuery эта и многие другие вопросы решаются очень быстро и без "заточки" кода под каждый конкретный браузер.

Ради одной это функции прикручивать JS-фреймворка не хочется(потому что не умею =)). 
потому да - чистый JS.
PM MAIL ICQ   Вверх
ksnk
Дата 3.5.2011, 15:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 48
Всего: 386



Цитата(hostsid @  3.5.2011,  05:50 Найти цитируемый пост)
div.innerHTML = "-"

Это - присвоение innerHTML нового значения - минуса. Это действительно то, что нужно было?


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
hostsid
Дата 3.5.2011, 15:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 30.9.2008

Репутация: нет
Всего: нет



Цитата(ksnk @ 3.5.2011,  15:04)
Цитата(hostsid @  3.5.2011,  05:50 Найти цитируемый пост)
div.innerHTML = "-"

Это - присвоение innerHTML нового значения - минуса. Это действительно то, что нужно было?

ну, нужно проверить. если html содержание div'a соответствует символу минуса, то в этом случае надо менять стиль прародителя.
PM MAIL ICQ   Вверх
ksnk
Дата 3.5.2011, 15:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 48
Всего: 386



div.innerHTML == "-"
Тогда, наверное, так должно быть?


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
hostsid
Дата 3.5.2011, 16:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 30.9.2008

Репутация: нет
Всего: нет



пришлось решить средствами пхп....лишняя партия запросов к базе...эх...
PM MAIL ICQ   Вверх
ksnk
Дата 3.5.2011, 17:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 48
Всего: 386



Код

function dn(){
  var divs=document.getElementsByTagName('div');
  for(var i=0;i<divs.length.i++){
     if (divs[i].innerHTML.match(/^\s*\-\s*$/)){
        divs[i].parentNode.parentNode.style.display = "none;"
     }
  }
}

там в примере еще и пробелов не учитывалось...

Это сообщение отредактировал(а) ksnk - 3.5.2011, 17:04


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0981 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.