Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 12.03.2014, 12:49
Новичок на форуме
Отправить личное сообщение для hil400k Посмотреть профиль Найти все сообщения от hil400k
 
Регистрация: 05.03.2014
Сообщений: 4

Изменить цвет поточного эемента
<div id="game">
        <ul>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
        </ul>
       </div>


Есть вот такой HTML код
как при помощи JS без jQ
при нажатии на элемент списка изменить его цвет???
Ответить с цитированием
  #2 (permalink)  
Старый 12.03.2014, 12:58
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,492

<style>
#game li:active{
    background: #f00;
}
</style>
<div id="game">
        <ul>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
        </ul>
</div>


А вообще:
<div id="game">
        <ul>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
        </ul>
</div>
<script>
document.getElementById('game').onclick = function(e){
    if(e.target.tagName == 'LI'){
        e.target.style.background = '#f00';
    }
}
</script>
__________________
29375, 35
Ответить с цитированием
  #3 (permalink)  
Старый 12.03.2014, 13:00
Аватар для animhotep
Профессор
Отправить личное сообщение для animhotep Посмотреть профиль Найти все сообщения от animhotep
 
Регистрация: 17.01.2013
Сообщений: 887

или так)
Ответить с цитированием
  #4 (permalink)  
Старый 12.03.2014, 13:00
Новичок на форуме
Отправить личное сообщение для hil400k Посмотреть профиль Найти все сообщения от hil400k
 
Регистрация: 05.03.2014
Сообщений: 4

спасибо, а можно это как-нибудь через оператор this?
Ответить с цитированием
  #5 (permalink)  
Старый 12.03.2014, 13:04
Аватар для animhotep
Профессор
Отправить личное сообщение для animhotep Посмотреть профиль Найти все сообщения от animhotep
 
Регистрация: 17.01.2013
Сообщений: 887

а вы по ссылке смотрели? там через this
Ответить с цитированием
  #6 (permalink)  
Старый 12.03.2014, 13:04
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

<!DOCTYPE html>
<style>
#game li{
    background: blue;
    height: 20px;
    list-style: none;
    margin: 5px 0;
    padding: 0;
}
#game li.active{
    background: red;
}
</style>
<div id="game">
        <ul>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
        </ul>
       </div>
<script>
    document.querySelector('#game ul').onclick = function(event) {
        var target = event ? event.target : window.event.srcElement;
        if (target.tagName == 'LI')
            target.className = 'active';
    };
</script>
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #7 (permalink)  
Старый 12.03.2014, 13:08
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Чет я прослоупочил.
Ну лан, вот еще вариант:
<!DOCTYPE html>
<style>
#game li{
    background: blue;
    height: 20px;
    list-style: none;
    margin: 5px 0;
    padding: 0;
}
#game li.active{
    background: red;
}
</style>
<div id="game">
        <ul>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
        </ul>
       </div>
<script>
(function(){
	var items = document.querySelectorAll('#game li');
	var onclick = function() {
		this.className = 'active';
	}
	for (var i = 0; i < items.length; i++) {
		items[i].onclick = onclick;
	}
})();
</script>
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #8 (permalink)  
Старый 12.03.2014, 13:09
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,492

danik.js, lol
document.querySelector()
и
window.event.srcElement
в одном скрипте - это сильно.
__________________
29375, 35

Последний раз редактировалось Aetae, 12.03.2014 в 13:13.
Ответить с цитированием
  #9 (permalink)  
Старый 12.03.2014, 13:47
Новичок на форуме
Отправить личное сообщение для hil400k Посмотреть профиль Найти все сообщения от hil400k
 
Регистрация: 05.03.2014
Сообщений: 4

спасибо всем
Ответить с цитированием
  #10 (permalink)  
Старый 12.03.2014, 13:50
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от Aetae
в одном скрипте - это сильно.
Так то в IE8 есть qsa
__________________
В личку только с интересными предложениями
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
изменить цвет фона и обратно... cesarr Events/DOM/Window 11 04.04.2017 14:19
Как изменить цвет и размер шрифта в Java savas332 Серверные языки и технологии 3 09.01.2014 17:02
Как изменить цвет кнопки, чтобы когда я нажал, то цвет не пропадал? ntest Общие вопросы Javascript 1 31.07.2013 09:14
изменить цвет дива через jquery animate() dadli Общие вопросы Javascript 2 28.05.2012 17:16
изменить цвет фона и запомнить его delias Элементы интерфейса 4 19.03.2010 17:34