[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: считаем кликнутые ссылки
Guest
привет всем. есть три ссылки. как сделать, чтобы при нажатий всех трёх ссылок они все исчезли( вроде сделано ) и пользователю стала доступна отправка формы( <form> )
то есть, как мне сделать проверочку, чтобы узнать что все ссылки нажаты

<a href="#" target="_blank" onclick="this.style.display='none'">ссылка1</a>
<a
href="#" target="_blank" onclick="this.style.display='none'">ссылка2</a>
<a
href="#" target="_blank" onclick="this.style.display='none'">ссылка2</a>
moskitos80
Иногда меня пробивает на JavaScript - держи :)

<!DOCTYPE html>
<html>
<head>
<title>
GENERATED CONTENT</title>
<meta
charset="utf-8">
</head>
<body>

<div
id="need-links">
<a
href="#one" target="_blank" onclick="">ссылка1</a>
<a
href="#two" target="_blank" onclick="">ссылка2</a>
<a
href="#three" target="_blank" onclick="">ссылка2</a>
</div>

<form
name="need-form">
<input
type="submit" value="SEND FORM" />
</form>

<script>

(function (G) {
/**
* Этому конструктору необходимо передать элемент, содержащий
* ссылки, по которым нужно направить пользователя
* @param htmlContainer {HTMLElement}
*/

var FormAccessor = function (htmlContainer) {
var linksCount = htmlContainer.getElementsByTagName("A").length;
visitedLinks = { length: 0 },
that = this;
// Делегируем события:
htmlContainer.onclick = function (e) {
var event = e || G.event,
target = event.target||event.srcElement;
if ("A" === target.nodeName) {
if (false === visitedLinks.hasOwnProperty(target.toString())) {
visitedLinks.length += 1;
}
visitedLinks[target.toString()] = true;
if (that.checkLink()) {
// тут, в принципе, можно прикрутить плавную анимацию исчезания:
htmlContainer.style.display = "none";
}
}

return false;
};
/**
* Проверка, по всем ли ссылкам прошел пользователь.
* @return boolean true в случае успеха
*/

this.checkLink = function (e) {
return visitedLinks.length === linksCount;
};
},
// Создаем экземпляр аксессора, передав ему див-контейнер ссылок
formAccessor = new FormAccessor(G.document.getElementById("need-links"));
// Обработчик отправки формы:
G.document["need-form"].onsubmit = function(e) {
return formAccessor.checkLink();
};
} (this) );
</script>
</body>
</html>



_____________
Сложное - просто. Простое сложно.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.