Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 21.07.2014, 13:23
Аспирант
Отправить личное сообщение для BeetleJuice541 Посмотреть профиль Найти все сообщения от BeetleJuice541
 
Регистрация: 18.07.2014
Сообщений: 58

Удаление содержимого переменной
Есть 3 блока DIV
при нажатии каждый из них меняет цвет,первый раз это работает,во 2 раз второй блок меняет цвет,но и 1 DIV остается с тем же цветом,как это исправить?
div2.style.backgroundColor="";-знаю про этот способ,он не подходит,есть еще способ?
Ответить с цитированием
  #2 (permalink)  
Старый 21.07.2014, 13:50
Профессор
Отправить личное сообщение для skrudjmakdak Посмотреть профиль Найти все сообщения от skrudjmakdak
 
Регистрация: 27.04.2012
Сообщений: 1,410

<html>
	<head>
		<title>example</title>
	</head>
	<body>
<div style="width: 50px; height: 50px; background-color: red;"></div>
 <script>
document.querySelector('div').onclick = function ()
	{
	this.style.backgroundColor = '';
	};
 </script>
	</body>
</html>
Ответить с цитированием
  #3 (permalink)  
Старый 21.07.2014, 14:28
Аспирант
Отправить личное сообщение для BeetleJuice541 Посмотреть профиль Найти все сообщения от BeetleJuice541
 
Регистрация: 18.07.2014
Сообщений: 58

Сообщение от skrudjmakdak Посмотреть сообщение
<html>
	<head>
		<title>example</title>
	</head>
	<body>
<div style="width: 50px; height: 50px; background-color: red;"></div>
 <script>
document.querySelector('div').onclick = function ()
	{
	this.style.backgroundColor = '';
	};
 </script>
	</body>
</html>
вы меня не так поняли,мне нужно что бы при клике на div,у других div менялся цвет на первоначальный.
Например:
я нажал на 1 блок,он стал черный,нажимаю на 2 блок,2 блок стал черный,а первый стал с исходным текстом.
Ответить с цитированием
  #4 (permalink)  
Старый 21.07.2014, 14:41
Профессор
Отправить личное сообщение для skrudjmakdak Посмотреть профиль Найти все сообщения от skrudjmakdak
 
Регистрация: 27.04.2012
Сообщений: 1,410

абсолютно ничего сложного, пару строк кода ))
<html>
	<head>
		<title>example</title>
		<style>
		.bl
		{
		width: 50px;
		height: 50px;
		margin: 10px;
		border: 1px solid black;
		float: left;
		}
		</style>
	</head>
	<body>
		<div style="width: 400px; overflow: hidden;">
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
		</div>
 <script>
var prev;

Array.prototype.forEach.call(document.querySelectorAll('.bl'), function (ths)
	{
	ths.onclick = function ()
		{
		this.style.backgroundColor = 'black';
		if (prev)
			prev.style.backgroundColor = '';

		if (prev == this)
			prev = undefined;
		else
			prev = this;
		}
	});
 </script>
	</body>
</html>

Последний раз редактировалось skrudjmakdak, 21.07.2014 в 14:43.
Ответить с цитированием
  #5 (permalink)  
Старый 21.07.2014, 16:34
Аспирант
Отправить личное сообщение для BeetleJuice541 Посмотреть профиль Найти все сообщения от BeetleJuice541
 
Регистрация: 18.07.2014
Сообщений: 58

для вас ничего сложного,а вот я здесь кое-что не понял,ну это уже мои проблемы.
Ответить с цитированием
  #6 (permalink)  
Старый 21.07.2014, 17:17
Профессор
Отправить личное сообщение для skrudjmakdak Посмотреть профиль Найти все сообщения от skrudjmakdak
 
Регистрация: 27.04.2012
Сообщений: 1,410

что именно? отвечу
Ответить с цитированием
  #7 (permalink)  
Старый 21.07.2014, 17:35
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

ещё вариант ...
<html>
	<head>
		<title>example</title>
		<style>
		.bl
		{
		width: 50px;
		height: 50px;
		margin: 10px;
		border: 1px solid black;
		float: left;
		}
        .black{
          background: #000000
        }

		</style>
	</head>
	<body>
		<div style="width: 400px; overflow: hidden;">
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
			<div class="bl"></div>
		</div>
 <script>
var prev;

Array.prototype.forEach.call(document.querySelectorAll('.bl'), function (ths)
	{
	ths.onclick = function ()
		{
		var black = document.querySelector('.black');
        if(!this.classList.contains('black') && black) black.classList.remove('black');
		this.classList.toggle('black');
		}
	});
 </script>
	</body>
</html>
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Удаление содержимого контейнера fi.adm Элементы интерфейса 6 19.07.2014 20:42
посылка переменной kent0026 jQuery 5 04.01.2014 17:34
Как значение переменной вставить в имя переменной? jsgogo Общие вопросы Javascript 3 02.06.2013 12:11
удаление содержимого страницы аяксом zebulun AJAX и COMET 3 26.03.2012 00:54
Преобразование значения переменной в строку leny Общие вопросы Javascript 3 01.10.2011 22:34