|
BackgroundColor по ID
Доброе время суток форумчане! Я полный нуб в js:cray: . Хочу попросить у вас подсказки. Есть код:
<body onload="test()"> <div id="a0">1</div> <div id="a1">2</div> <div id="a2">3</div> <div id="a3">4</div> <div id="a4">5</div> <div id="a5">6</div> </body>
function test(){
var divs;
for(var j = 0; j < 6; j++) {
divs= document.getElementById('a' + j);
divs.onclick = function () {
document.getElementById(this.id).style.backgroundColor = "blue";
alert("ID элемента" + " " + "'" + this.id + "'");
:help: Проблема в том, что бы по нажатию на DIV предыдущий тоже менял bgColor. Буду благодарен за любые советы и подсказки |
Zyuzka,
:-?
<!DOCTYPE HTML>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<script>
function test(){
var divs, old;
for(var j = 0; j < 6; j++) {
divs= document.getElementById('a' + j);
divs.onclick = function () {
old && (old.style.backgroundColor='')
this.style.backgroundColor = "blue";
old = this
}}}
</script>
</head>
<body onload="test()">
<div id="a0">1</div>
<div id="a1">2</div>
<div id="a2">3</div>
<div id="a3">4</div>
<div id="a4">5</div>
<div id="a5">6</div>
</body>
</html>
|
Цитата:
|
Zyuzka,
:-?
<!DOCTYPE HTML>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<script>
function test() {
var divs;
for (var j = 0; j < 6; j++) {
divs = document.getElementById('a' + j);
divs.onclick = function() {
var color = "blue"
for (var j = 0; j < 6; j++) {
divs = document.getElementById('a' + j);
divs.style.backgroundColor = color;
if (divs == this) color = '';
}
}
}
}
</script>
</head>
<body onload="test()">
<div id="a0">1</div>
<div id="a1">2</div>
<div id="a2">3</div>
<div id="a3">4</div>
<div id="a4">5</div>
<div id="a5">6</div>
</body>
</html>
|
Цитата:
|
Цитата:
background: linear-gradient(to right, blue 50%, white 50%); к элементу по которому кликнули? |
Цитата:
|
Zyuzka,
<!DOCTYPE HTML>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<script>
function test() {
var divs;
for (var j = 0; j < 6; j++) {
divs = document.getElementById('a' + j);
divs.onclick = function() {
var color = "linear-gradient(to right, blue, white)"
for (var j = 0; j < 6; j++) {
divs = document.getElementById('a' + j);
divs.style.backgroundImage = color;
if (divs == this) color = '';
}
}
}
}
</script>
</head>
<body onload="test()">
<div id="a0">1</div>
<div id="a1">2</div>
<div id="a2">3</div>
<div id="a3">4</div>
<div id="a4">5</div>
<div id="a5">6</div>
</body>
</html>
|
Zyuzka,
<!DOCTYPE HTML>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<script>
function test() {
var divs;
for (var j = 0; j < 6; j++) {
divs = document.getElementById('a' + j);
divs.onclick = function() {
var color = "linear-gradient(to right, blue, blue)"
for (var j = 0; j < 6; j++) {
divs = document.getElementById('a' + j);
divs.style.backgroundImage = divs == this ? "linear-gradient(to right, blue, white)" : color;
if (divs == this) color = '';
}
}
}
}
</script>
</head>
<body onload="test()">
<div id="a0">1</div>
<div id="a1">2</div>
<div id="a2">3</div>
<div id="a3">4</div>
<div id="a4">5</div>
<div id="a5">6</div>
</body>
</html>
|
Цитата:
Осталось понять строку divs.style.backgroundImage = divs == this ? "linear-gradient(to right, blue, white)" : color;:) |
| Часовой пояс GMT +3, время: 02:08. |
|