2016-05-14 4 views
-1
document.getElementById("link1").addEventListener("click", c); 
    function c(){ 
     var a = document.querySelectorAll('.images'); 
     for(var k in a){ 
      a[k].setAttribute('class','col-md-12'); 
     } 
    } 
document.getElementById("link2").addEventListener("click", d); 
    function d(){ 
     var a = document.querySelectorAll('.images'); 
     for(var k in a){ 
      a[k].setAttribute('class','col-md-6'); 
     } 
    } 
document.getElementById("link3").addEventListener("click", e); 
    function e(){ 
     var y = document.querySelectorAll('.images'); 
     for(var z in y){ 
      y[z].setAttribute('class','col-md-4'); 
     } 
    } 

вот мой код JS, я не знаю, что я не так? любой может помочь? спасибо :) мой демо в codepen http://codepen.io/anon/pen/MyRmGyЯ не знаю, почему мой код не так? и что не так?

+4

Ваш вопрос всегда должен заявить, что код СООТВЕТСТВУЕТ делать, против того, что это НАСТОЯТЕЛЬНО делает. –

+0

Привет и добро пожаловать в SO! Пожалуйста, прочитайте [this] (http://stackoverflow.com/help/how-to-ask) сообщение о том, как задавать лучшие вопросы, которые помогут людям дать вам лучшие ответы. –

ответ

1

Изменяя атрибут изображений class, они не будут найдены при последующих вызовах document.querySelectorAll('.images')

Установить атрибут класса, который поддерживает images класс:

a[k].setAttribute('class', 'col-md-12 images'); 

(Если ваш вопрос о том, что код работает только на первой линии мыши, вы не сказали)

+0

omg, его работа, спасибо вам очень много: D, у вас есть какой-то курс для изучения этого? вы можете поделиться xD благодаря вам: D –

+0

@duy У меня нет курса, я только давно работаю с этим, и сделал большинство ошибок сам, поэтому через некоторое время вы научитесь отлаживать свой код. Если у вас нет ошибок в консоли, первым шагом является проверка того, что вы работаете с данными, с которыми, по вашему мнению, работаете. Первое, что я пробовал здесь, - это ввести «alert (a.length)», чтобы проверить, были ли события инициированы, и были найдены изображения. Когда это дало '10' при первом щелчке и' 0' на втором, у вас есть довольно хорошая идея о том, где проблема. –

Смежные вопросы