Показать сообщение отдельно
  #2 (permalink)  
Старый 26.12.2015, 12:12
Аватар для EmperioAf
Профессор
Отправить личное сообщение для EmperioAf Посмотреть профиль Найти все сообщения от EmperioAf
 
Регистрация: 15.01.2015
Сообщений: 622

советую использовать свойство display (у него лучше поддержка браузерами) и писать такие темы в раздел "Элементы интерфейса" или в "Общие вопросы javascript". Если бы вы написали в одних из этих разделов то ответ бы получили ещё вчера.

Вы печатаете в консоль и должны были увидеть там 2 ошибки. Они говорят вам о том, что переменные nomenu и contentPaddingLeft являются коллекциями, а вам нужен в этих коллекциях определённый элемент (нулевой скорее всего)
Также интересные вещи происходят при сравнении:
метод getAttribute выдаст вам строку. Причем выдаст то, что записано в атрибуте элемента. Т.е. для элемента
<aside visibility="nbufgd"></aside>


выдаст строку nbufgd
А дальше идёт сравнение строки с булевым значением true, и у меня для вас плохие новости:

alert('true' === true)


alert('true' == true)


короче говоря ваш скрипт должен был выглядеть примерно так:
var nomenu = document.getElementsByTagName('aside')[0];
                     
                    var contentPaddingLeft = document.getElementsByClassName(['tm-section'])[0];
                     
                    if(nomenu.getAttribute('visibility') === 'true') {
                        console.log("No padding");
                    } else {
                        contentPaddingLeft.setAttribute(['padding-left'], '100px');
                    };

Последний раз редактировалось EmperioAf, 26.12.2015 в 12:14.
Ответить с цитированием