Выделение активной вкладки меню CSS
Есть горизонтальное меню сss.
<nav> <ul id="main-nav"> <li><a class="red" href="#navTab1">1</a></li> <li><a class="green" href="#navTab2">2</a></li> <li><a class="blue" href="#navTab3">3</a></li> <li><a class="yellow" href="#navTab4">4</a></li> <li><a class="maroon" href="#navTab5">5</a></li> </ul> </nav> Необходимо чтобы при клике на вкладку она получала класс red, а та, у которой был класс red раньше, получала цвет вкладки, по которой кликнули. т.е. кликаем на 3 - 3 вкладка становится red, 1 вкладка становится blue |
Webdev,
:-? <!DOCTYPE HTML> <html> <head> <title>Untitled</title> <meta charset="utf-8"> <style type="text/css"> .red { background: red; } .green { background: green; } .blue { background: blue; } .yellow { background: yellow; } .maroon { background: maroon; } a{ width: 50px; display: inline-block; } </style> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> <script> $(function () { var cls = 'red', indx = 0, $a = $('.main-nav a'); $a.click(function () { var temp = this.className; $a.eq(indx)[0].className = temp; this.className = 'red'; cls = temp; indx = $a.index(this) } ) } ) </script> </head> <body> <nav> <ul class="main-nav"> <li><a class="red" href="#navTab1">1</a></li> <li><a class="green" href="#navTab2">2</a></li> <li><a class="blue" href="#navTab3">3</a></li> <li><a class="yellow" href="#navTab4">4</a></li> <li><a class="maroon" href="#navTab5">5</a></li> </ul> </nav> </body> </html> |
Спасибо, а как это будет выглядеть на чистом javascript? я только начал учиться и еще не знаю jquery
|
Webdev,
:-? http://learn.javascript.ru/ <!DOCTYPE HTML> <html> <head> <title>Untitled</title> <meta charset="utf-8"> <style type="text/css"> .red { background: red; } .green { background: green; } .blue { background: blue; } .yellow { background: yellow; } .maroon { background: maroon; } a{ width: 50px; display: inline-block; } </style> <script> window.onload = function () { var cls = 'red', obj = document.querySelector('.red'), main = document.querySelector('.main-nav'); main.onclick = function (event) { var el = event && event.target || window.event.srcElement; if ("A" == el.tagName) { var temp = el.className; obj.className = temp; el.className = 'red'; cls = temp; obj = el; } } } </script> </head> <body> <nav> <ul class="main-nav"> <li><a class="red" href="#navTab1">1</a></li> <li><a class="green" href="#navTab2">2</a></li> <li><a class="blue" href="#navTab3">3</a></li> <li><a class="yellow" href="#navTab4">4</a></li> <li><a class="maroon" href="#navTab5">5</a></li> </ul> </nav> </body> </html> |
Часовой пояс GMT +3, время: 14:49. |