Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 26.03.2017, 13:51
Интересующийся
Отправить личное сообщение для strange.tany Посмотреть профиль Найти все сообщения от strange.tany
 
Регистрация: 15.01.2017
Сообщений: 16

removeAttribute is not a function
function opening() {
	var bags = document.getElementsByClassName('close');
	for (var i=0; i < bags.length; i++) {
		bags[i].onclick = task;
	}
}
function task(e) {
	var imNum = e.id;
	e.removeAttribute('src');
	e.setAttribute('src', imNum + "open.png");
}

при выполнении данного кода консоль выдает ошибку e.removeAttribute is not a function. в чем именно проблема
Ответить с цитированием
  #2 (permalink)  
Старый 26.03.2017, 14:04
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

strange.tany,
почему вы решили что у обьекта event есть свойство removeAttribute или setAttribute или id?
может поискать элемент на котором произошло событие
Ответить с цитированием
  #3 (permalink)  
Старый 26.03.2017, 14:33
Интересующийся
Отправить личное сообщение для strange.tany Посмотреть профиль Найти все сообщения от strange.tany
 
Регистрация: 15.01.2017
Сообщений: 16

рони,
<img class='close' id='1' src='1.png'>
<img class='close' id='2' src='2.png'>
<img class='close' id='3' src='3.png'>
<img class='close' id='4' src='4.png'>

по идее на этих элементах происходит событие
Ответить с цитированием
  #4 (permalink)  
Старый 26.03.2017, 14:41
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

strange.tany,
вам элемент нужен либо из event, либо из bags - то и другое одинаково. читайте про event это проще, хотя в bags он уже есть, но вам похоже это будет сложнее.
Ответить с цитированием
  #5 (permalink)  
Старый 26.03.2017, 15:19
Интересующийся
Отправить личное сообщение для strange.tany Посмотреть профиль Найти все сообщения от strange.tany
 
Регистрация: 15.01.2017
Сообщений: 16

рони,
спасибо. Сделала через event и вроде сейчас все нормально пошло
Ответить с цитированием
  #6 (permalink)  
Старый 26.03.2017, 15:40
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

strange.tany,
window.addEventListener('DOMContentLoaded', function() {
[].forEach.call(document.querySelectorAll('.close'), function(item) {
        item.addEventListener('click', function(event) {
            item.src = item.id + 'open.png';
        });
    });
});


или
function task(e) {
  var item = e.target;
  item.src = item.id + 'open.png';
}
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
научите пользоваться массивами!!!! Вася Задунайский Элементы интерфейса 3 09.05.2016 01:09
Как создается function Function(){} ? Cepairda Общие вопросы Javascript 0 10.02.2016 15:03
сабытие Onchange serrrgggeee Javascript под браузер 1 25.09.2014 10:11
вопрос про кнопку javascript Ruxx Общие вопросы Javascript 9 22.01.2013 21:01
Свойства посредством полиморфных функций tenshi Ваши сайты и скрипты 0 18.03.2010 17:12