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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> удаление стилей у элементов. 
V
    Опции темы
Serious2008
Дата 13.11.2012, 09:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Здравствуйте, мне нужна небольшая помощь с удалением стилей. 

У меня через for идём обход div-ов.
И как бы в самом начале мне нужно очистить от стилей элементы. Я пытался вот так.
t[i].style = " "; 
Но он не хочет, хром пишет, что нельзя чтобы было null. Подскажите пожалуйста, как можно все именно прописанные стили убить?
PM MAIL   Вверх
Aliance
Дата 13.11.2012, 10:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

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



Не знаю зачем уж такая задача встала, но можно ее решить обнулив свойство cssText:
Код

t[i].style.cssText = '';​​​​​

PM MAIL WWW ICQ Skype   Вверх
Serious2008
Дата 13.11.2012, 10:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Aliance, 
вот как хром ругается на твоё
Код

Uncaught SyntaxError: Unexpected token ILLEGAL 

когда ставлю вот такое
  t[i].style.display = "block "; 
то не ругается.

Это сообщение отредактировал(а) Serious2008 - 13.11.2012, 10:24
PM MAIL   Вверх
Aliance
Дата 13.11.2012, 11:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

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



У меня хром не ругается.
http://jsfiddle.net/Aliance/Ssacs/

Что происходит у тебя я сказать не могу, ведь код ты скрываешь.
PM MAIL WWW ICQ Skype   Вверх
Serious2008
Дата 13.11.2012, 12:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Код

 for (var i = 0; i <= 68; i++) {
     // t[i].style.display = "block "; 
      t[i].style.cssText = " ";​​​​​
     if (form.cat.value == 4)
        {
            if( i == 64)
            {
        
            }
            else if(i == 65)
            {
    
            }
            else if(i == 16)
            {
    
            }
            else if(i == 17)
            {
    
            }
            
            else if(i == 18)
            {
    
            }
            else if(i == 10)
            {
    
            }
            else if(i == 9)
            {
    
            }
            else if(i == 24)
            {
    
            }
            else if(i == 27)
            {
    
            }
            else
            {
            
            t[i].style.display = "none"; 
            }
            
        }
}


Ну вот как-то так. С block всё нормально работает и работало, но если ставить block, то вёрстка слетает.
PM MAIL   Вверх
Aliance
Дата 13.11.2012, 12:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

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



 smile что в массиве t я должен сам додумать?
PM MAIL WWW ICQ Skype   Вверх
Serious2008
Дата 13.11.2012, 12:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Ну и таких 77-тров
Код

       <tr  id="type0">
                  <td class="key">Жилая площадь</td>
                  <td><input type="text" name="live_space" size="10" class="inputbox" maxlength="10" value="" />&nbsp;м&sup2;</td>
                </tr>
    <tr  id="type29">
                  <td class="key">Полезная площадь</td>
                  <td><input type="text" name="live_space" size="10" class="inputbox" maxlength="10" value="" />&nbsp;м&sup2;</td>
                </tr>
     <tr  id="type24">
        <td class="key">Земельный участок</td>
        <td><input type="text" name="zemeln_uchastok" size="10" class="inputbox" maxlength="20" value="" />&nbsp;м&sup2;</td>
    </tr>

Код

 for (var i = 0; i < 77; i++) {
        
      t[i] = document.getElementById('type' + i); 

    }

PM MAIL   Вверх
Aliance
Дата 13.11.2012, 13:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

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



Не пиши больше так никогда  smile 

Код

<table id="myTable">
    <tr style="border: 1px solid;"><td>ololo</td></tr>
    <tr style="border: 1px solid;"><td>ololo</td></tr>
    <tr style="border: 1px solid;"><td>ololo</td></tr>
    <tr style="border: 1px solid;"><td>ololo</td></tr>
    <tr style="border: 1px solid;"><td>ololo</td></tr>
</table>
<button id="btn">click me</button>​​​

Код

document.getElementById('btn'​).onclick = function() {
    var trs = document.getElementById('myTable').getElementsByTagName('tr');
    for (var i in trs) {
        trs[i].style.cssText = '';
    }
}​

PM MAIL WWW ICQ Skype   Вверх
Serious2008
Дата 13.11.2012, 13:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Aliance, 
мне нужно чтобы определённый tr-ы исчезали, по этому такой вариант не прокатит.
PM MAIL   Вверх
Aliance
Дата 13.11.2012, 14:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

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



Значит назначь им class и воспользуйся getElementsByClassName (работает не везде, эмуляцию в гугле найти легко). Или воспользуйся jQuery. Но создавать эмуляцию node list в цикле мне видится не самым разумным решением.

Проблема решена или все еще не понятно что-то?
PM MAIL WWW ICQ Skype   Вверх
Serious2008
Дата 13.11.2012, 14:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Aliance, 
нет не решена, ладно сейчас попробую сделать что-нибудь, правда с классом, вместо id.
PM MAIL   Вверх
Aliance
Дата 13.11.2012, 14:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

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



Не знаю как ты делаешь, но все должно работать даже при таком способе получения списка нод:
http://jsfiddle.net/6x3Yd/
PM MAIL WWW ICQ Skype   Вверх
Serious2008
Дата 13.11.2012, 15:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Переделал под этот стиль. И теперь вот так он ругается

Код

 trs[i].style.cssText = '';
Uncaught TypeError: Cannot read property 'style' of null

PM MAIL   Вверх
Aliance
Дата 13.11.2012, 15:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

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



Что ты переделал, как я могу это узнать, без кода? Когда люди уже поймут, что тут не экстрасенсы?  smile 

Тебе ничего переделывать и не нужно, все должно работать итак. Выложи готовый скрипт в интернет и дай ссылку. Или полностью скопируй код на jsfiddle
PM MAIL WWW ICQ Skype   Вверх
Serious2008
Дата 13.11.2012, 15:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Aliance, 
Блин, тут много быдлокодинга. Вообще функция select это
ссылка

Добавлено через 20 секунд
Которая срабатывает при выборе категории
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: для новичков | Следующая тема »


 




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


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

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