Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 17.07.2011, 02:44
Интересующийся
Отправить личное сообщение для Jack Посмотреть профиль Найти все сообщения от Jack
 
Регистрация: 17.07.2011
Сообщений: 14

Проверка перехода по ссылке
Здравствуйте, уважаемые форумчане. Я столкнулся с такой задачей ...
Есть скрипт, но хотелось бы его видеть более доработанным ))))


<script type="text/javascript" src="scripts/base.debug.js"></script>
	    <script type="text/javascript">
	window.onload = function() {
    function pFp(){ 
	        var hid = document.getElementById("hidden"),
	            tak = [],
	            elems = document.getElementsByTagName('A'),
	            num = elems.length,
	            pat = new RegExp("(^|\\b)(takru)(\\b|$)"),
	            i = 0, j = 0;
        for (; i < num; i++) { 
	            if (pat.test(elems[i].className)) { 
	                var f = function() {
	                    setTimeout(function() {
	                        hid.style.display = "";
	                    }, 1000);
	                };
	                elems[i].setAttribute('target', '_blank'); 
	                if (elems[i].addEventListener) elems[i].addEventListener("click", f, false); 
	                else if (elems[i].attachEvent) elems[i].attachEvent("onclick", f); 
	                else elems[i].onclick = f; 
	                j++;
	            } 
	        } 
	    }; 
	    pFp();
	};
	    </script>
	</head>
	<body>

            ссылки

	<div id="hidden" style="display: none;">{param}</div>


Не подскажите, как сделать проверку адреса ссылок, по которым переходит пользователь для отображения скрытого параметра?
Проверка ... я имею в виду, если пользователь кликает на http://------**-----.ru/, то скрипт не отображает скрытый параметр, а если на другие ссылки, то отображает ...

Последний раз редактировалось Jack, 17.07.2011 в 18:02.
Ответить с цитированием
  #2 (permalink)  
Старый 17.07.2011, 13:37
Аватар для trikadin
Модератор
Отправить личное сообщение для trikadin Посмотреть профиль Найти все сообщения от trikadin
 
Регистрация: 27.04.2010
Сообщений: 3,417

Пожалуйста, отформатируйте свой код!

Для этого его можно заключить в специальные теги: js/css/html и т.п., например:
[js]
... ваш код...
[/js]


О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.
__________________
Читайте:
Ты любопытный) Всё-таки, ничему в этом мире не помешает хорошая доля юмора)
Как спросить, чтобы вам ответили
Часто Задаваемые Вопросы (FAQ)
Ответить с цитированием
  #3 (permalink)  
Старый 17.07.2011, 15:58
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

Jack, на вскидку:
<a href="http://ya.ru/" id="a">click</a>

<script>
document.getElementById('a').onclick = function() {
    var hostname = this.hostname;
    if(hostname == 'ya.ru') {
        this.innerHTML = hostname;
    }
    return false;
};
</script>

Последний раз редактировалось monolithed, 17.07.2011 в 16:03.
Ответить с цитированием
  #4 (permalink)  
Старый 17.07.2011, 21:11
Интересующийся
Отправить личное сообщение для Jack Посмотреть профиль Найти все сообщения от Jack
 
Регистрация: 17.07.2011
Сообщений: 14

monolithed, огромное спасибо, но есть одно НО
Блок ссылок идёт скриптом, и я его не могу редактировать ...Т.е. через Id выполнить проверку не получится ...
<a href="http://www.ya.ru" class="class123456"><b>Clicks</b></a>

Поэтому попробывал сделать через ClassName
<script>
document.getElementByclassname('class123456').onclick = function() {
    var hostname = this.hostname;
    if(hostname == 'http://www.ya.ru') {
        this.innerHTML = hostname;
    }
    return false;
};
</script>

Но теперь туплю и не могу понять, куда вставить скрипт ?
Ответить с цитированием
  #5 (permalink)  
Старый 17.07.2011, 21:28
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

Сообщение от Jack
через Id выполнить проверку не получится
значит нужно работать с тем что есть (элемент, атрибут, класс..)
Сообщение от Jack
document.getElementByclassname('class123456')
тут опечатка, и метод не кроссбраузерный.
Сообщение от Jack
Но теперь туплю и не могу понять, куда вставить скрипт
тут ничем помочь
Ответить с цитированием
  #6 (permalink)  
Старый 18.07.2011, 05:22
Интересующийся
Отправить личное сообщение для Jack Посмотреть профиль Найти все сообщения от Jack
 
Регистрация: 17.07.2011
Сообщений: 14

... пф ...
<script type="text/javascript" src="scripts/base.debug.js"></script>
	    <script type="text/javascript">
	window.onload = function() {
    function pFp(){ 
	        var hid = document.getElementById("hidden"),
	            tak = [],
	            elems = document.getElementsByTagName('A'),
	            num = elems.length,
	            pat = new RegExp("(^|\\b)(takru)(\\b|$)"),
	            i = 0, j = 0;
        for (; i < num; i++) { 
	            if (pat.test(elems[i].className)) { 
	                var f = function() {
	                    setTimeout(function() {
	                        hid.style.display = "";
	                    }, 1000);
	                };
	                elems[i].setAttribute('target', '_blank'); 
	                if (elems[i].addEventListener) elems[i].addEventListener("click", f, false); 
	                else if (elems[i].attachEvent) elems[i].attachEvent("onclick", f); 
	                else elems[i].onclick = f; 
	                j++;
	            } 
	        } 
	    }; 
	    pFp();
	};
	    </script>
	</head>
	<body>
<a href="http://www.-l-.com" class="La128v"><b>click1</b></a>
<a href="http://www.-l-.com/864684" class="La128v"><b>lalalala</b></a>
<a href="http://www.-l-.com/933.20122" class="La128v"><b>lalalala</b></a>
<a href="http://www.-l-.com/yhwjjdu" class="La128v"><b>lalalala</b></a>
<a href="http://www.-l-.com/486rt68h" class="La128v"><b>lalalala</b></a>
<a href="http://www.-l-.com/4rht486h" class="La128v"><b>lalalala</b></a>
<a href="http://www.-l-.com/rt8h464" class="La128v"><b>lalalala</b></a>
<a href="http://www.-l-.com/4r86th46" class="La128v"><b>lalalala</b></a>
<a href="http://www.-l-./rth486864" class="La128v"><b>lalalala</b></a>

	<div id="hidden" style="display: none;">{param}</div>


Нужно сделать так, чтобы ссылка click1 не показывал скрытый параметр ...
Кто сможет более подробней помочь ? )
Ответить с цитированием
  #7 (permalink)  
Старый 18.07.2011, 11:10
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

Сообщение от Jack
Нужно сделать так, чтобы ссылка click1 не показывал скрытый параметр ...
излагайте свои мысли конкретней. Если нужно пропустить первый элемент, то начните цикл с 1, т.е. i = 1;
Ответить с цитированием
  #8 (permalink)  
Старый 18.07.2011, 14:40
Интересующийся
Отправить личное сообщение для Jack Посмотреть профиль Найти все сообщения от Jack
 
Регистрация: 17.07.2011
Сообщений: 14

Сообщение от monolithed Посмотреть сообщение
излагайте свои мысли конкретней.
<a href="http://www.-l-.com" class="La128v"><b>click1</b></a> // от клика по этой ссылке скрытый параметр не отображается
<a href="http://www.-l-.com/864684" class="La128v"><b>lalalala</b></a> // от клика по этой ссылке скрытый параметр  отображается
<a href="http://www.-l-.com/933.20122" class="La128v"><b>lalalala</b></a> // от клика по этой ссылке скрытый параметр отображается
<a href="http://www.-l-.com/yhwjjdu" class="La128v"><b>lalalala</b></a> // от клика по этой ссылке скрытый параметр отображается
<a href="http://www.-l-.com/486rt68h" class="La128v"><b>lalalala</b></a> // от клика по этой ссылке скрытый параметр отображается
<a href="http://www.-l-.com/4rht486h" class="La128v"><b>lalalala</b></a> // от клика по этой ссылке скрытый параметр отображается
<a href="http://www.-l-.com/rt8h464" class="La128v"><b>lalalala</b></a> // от клика по этой ссылке скрытый параметр отображается
<a href="http://www.-l-.com/4r86th46" class="La128v"><b>lalalala</b></a> // от клика по этой ссылке скрытый параметр отображается
<a href="http://www.-l-./rth486864" class="La128v"><b>lalalala</b></a> // от клика по этой ссылке скрытый параметр отображается

Сообщение от monolithed Посмотреть сообщение
излагайте свои мысли конкретней. Если нужно пропустить первый элемент, то начните цикл с 1, т.е. i = 1;
Хм ... попробывал поставить i=1, всё равно при клике на первую ссылку отображается скрытый параметр

Последний раз редактировалось Jack, 18.07.2011 в 18:01.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
onclick на ссылке (Sandr) Общие вопросы Javascript 9 23.09.2015 03:50
Переход из Select'а по ссылке Pekkonen jQuery 2 04.03.2011 15:56
Проверка полей отправляемой формы. denisOgr jQuery 6 18.10.2010 19:40
имитация перехода по ссылке kalisha Events/DOM/Window 2 30.01.2010 17:10
Механизм перехода по ссылке пользователем и переадресация. Pluto Общие вопросы Javascript 10 07.09.2009 15:06