Я хочу, чтобы мои 4 анкерных тега в моем HTML-файле меняли свои свойства css одновременно. Поэтому я создал функцию многократного использования под названием query()
в моем JS-файле, чтобы имитировать удивительный механизм выбора DOM-знака в jQuery, используя только простой JS. Внутри функции query()
есть цикл, который проверяет длину параметра elem
(DOM) и применяет его для получения и возврата индекса каждого введенного элемента DOM. Я был удивлен, что он вернул только первый элемент., возвращающий все элементы DOM с использованием функции многократного использования
function query(elem) {
for(var i=0; i<document.querySelectorAll(elem).length; i++) {
return document.querySelectorAll(elem)[i];
}
}
query('a').style.color = 'yellow';
Я считаю, что проблема связана с объемом return
. Я надеюсь, что кто-то может указать или исправить ошибки с моим кодом. Заранее спасибо.
Вы останавливая функцию после первого цикла. Удалите ключевое слово 'return'. –
Использование 'return' таким образом приведет к выходу из функции, а не к циклу, как вы можете ожидать. Вместо этого вы можете добавить каждый элемент в массив и затем вернуть этот массив. – evolutionxbox
вы возвращаете элемент индекса «i», который вынимает 0 элементов [] –