Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   помогите добавить class/id элементу (https://javascript.ru/forum/events/23067-pomogite-dobavit-class-id-ehlementu.html)

magnateg 10.11.2011 15:36

помогите добавить class/id элементу
 
Здравствуйте всем!
Есть готовая фотогалерея, в которой не реализовано выделение активной картинки (т.е. нажимаем на картинку и у нее присваивается border 1px white к примеру). Есть задача сделать это выделение.
Сам я в JS не разбираюсь, прошу помощи у вас:
Как добавить класс active при нажатии на картинку?
код события которое происходит при onclick:
//dom
function vsig_dom(obj) {return document.getElementById(obj); }

//switch image without reload
function switchimg(t_ident, t_ident_b) {
	//topimage
	var topimg = "topimg" + t_ident_b[2];
	t_ident[6] = t_ident[6].replace(/'/g, "'"); //replace ' with ' in alt-title
	t_ident[4] = t_ident[4].replace(/'/g, "'"); //replace ' with ' in link-title
	t_ident[6] = t_ident[6].replace(/&/g, "&"); //replace & with & in alt-title
	//switch caption
	var t_cap = (typeof (vsig_dom(topimg).parentNode.href) !== "undefined") ? (vsig_dom(topimg).parentNode.parentNode.getElementsByTagName("div")) : (vsig_dom(topimg).parentNode.getElementsByTagName("div"));
	if (t_cap.length >= 1) {
		t_cap[0].innerHTML = (t_ident[1] !== "" || t_ident[2] !== "") ? ("<span>" + t_ident[1] + "</span><span>" + t_ident[2] + "</span>") : "";
	}
	//switch link
	if (typeof (vsig_dom(topimg).parentNode.href) !== "undefined") {
		vsig_dom(topimg).parentNode.href = t_ident[3];
		vsig_dom(topimg).parentNode.title = t_ident[4];
		vsig_dom(topimg).parentNode.target = t_ident[5];
	}
	//switch image
	vsig_dom(topimg).src = t_ident_b[0] + "vsig_images/" + t_ident[0];
	vsig_dom(topimg).alt = t_ident[6];
	vsig_dom(topimg).title = t_ident[6];
	vsig_dom(t_ident).id='active';
	
}

Рабочая галерея тут

ksa 10.11.2011 15:55

Цитата:

Сообщение от magnateg
Сам я в JS не разбираюсь, прошу помощи у вас

А в чём разбираешься? А то может бартер! :D

Pavel M. 10.11.2011 16:01

по моему здесь JS не нужен
можно CSS обойтись
добавить

.vsig_thumb a:active img { border: 1px solid white; }


можно почитать http://htmlbook.ru/css/active

magnateg 10.11.2011 16:03

Цитата:

Сообщение от ksa (Сообщение 135670)
А в чём разбираешься? А то может бартер! :D

ни в че особо хорошо =(, в linux могу чемто помочь)
ну еще в машинах разбираюсь :D

ksa 10.11.2011 16:05

Pavel M., так "нажал" и "навел" кагбе разные действия и последствия будут разные... После нажатия изменения остаются, а после "убирания наведения" всё возвращается на круги своя... :)

ksa 10.11.2011 16:06

Цитата:

Сообщение от magnateg
ну еще в машинах разбираюсь

Может тогда поможешь мотор с кузова Газели в гараж занести? :) А то наши тут вовсе заелись...

Pavel M. 10.11.2011 16:09

Цитата:

Сообщение от ksa (Сообщение 135676)
Pavel M., так "нажал" и "навел" кагбе разные действия и последствия будут разные... После нажатия изменения остаются, а после "убирания наведения" всё возвращается на круги своя... :)

:active как раз при нажатии, это :hover при наведении

magnateg 10.11.2011 16:09

Цитата:

Сообщение от ksa (Сообщение 135677)
Может тогда поможешь мотор с кузова Газели в гараж занести? :) А то наши тут вовсе заелись...

без б:D
только если Новосиб:)

magnateg 10.11.2011 16:13

Цитата:

Сообщение от Pavel M. (Сообщение 135674)
по моему здесь JS не нужен
можно CSS обойтись
добавить

.vsig_thumb a:active img { border: 1px solid white; }


можно почитать http://htmlbook.ru/css/active

не работает(

Pavel M. 10.11.2011 16:16

Цитата:

Сообщение от magnateg (Сообщение 135681)
не работает(

а куда добавил то ?


Часовой пояс GMT +3, время: 03:22.