Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Решение задания: супер обработка клика (https://javascript.ru/forum/events/6547-reshenie-zadaniya-super-obrabotka-klika.html)

pavluxa09 04.12.2009 15:06

Решение задания: супер обработка клика
 
Здравствуйте. Есть такая задача. Нужно сделать javascript код, который должен выполнять следующие действия:

Как только на страницу где он находится заходит посетитель мы создаём iframe src которого равен stats/stats.php?mod=show , если посетитель кликает в любое место на странице то мы создаём новый iframe где src равен stats/stats.php?mod=click . Помогите это сделать не изменяя HTML код а тупо влипя ссылку на этот javascript (<script src="мойява.js"></script> ).

То есть, нужно написать сам код который будет работать по такому алгоритму. При создании этого у меня возникла проблема. Посетитель кникнул к примеру на ссылку, мой появляющейся IFRAME не успевает загрузиться.

Помогите исправить или изменить код:
Код:

<iframe id="mystats" src="stats/stats.php?show=2&hash=3695b136002039eb771493d0b76360cb" width="0" height="0"></iframe>

 <script language="JavaScript" type="text/javascript">
 var count = 0;
 function myfunction()
 {
  if( count==0 )
  {
  count = 1;
  document.getElementById('mystats').src = 'stats/stats.php?click=2&hash=3695b136002039eb771493d0b76360cb';
  }
 }
 document.onclick = myfunction;
 </script>

Заранее спасибо

Gvozd 04.12.2009 15:17

Цитата:

Сообщение от pavluxa09
создаём новый iframe

так создавай же новый

Kolyaj 04.12.2009 15:21

А зачем iframe вообще?

pavluxa09 04.12.2009 15:27

Ну просто нужно чтоб содержимое страницы stats.php получило данные от имени посетителя первый раз когда он зашел на сайт а второй раз когда он кликнул куда нить.

> так создавай же новый
если чел кликает на ссылку он создаётся но не успевает загрузиться.

Kolyaj 04.12.2009 15:30

Цитата:

Сообщение от pavluxa09
нужно чтоб содержимое страницы stats.php получило данные от имени посетителя первый раз когда он зашел на сайт а второй раз когда он кликнул куда нить.

var img = new Image();
img.src = 'stats/stats.php?mod=click';

Gvozd 04.12.2009 15:33

Цитата:

Сообщение от pavluxa09
если чел кликает на ссылку он создаётся но не успевает загрузиться.

понял
не сразу обратил внимание что речь идет о клике по ссылке
попробуй синхронный xmlhttprequest, или же отменять переход по ссылке, а потом осуществлять его самостоятельно, когда фрейм прогрузится

kkn74 24.12.2009 16:24

кликнуть по ссылке
 
Есть сайт , помогите написать скрипт, который бы кликал по рекламной ссылке в iframe, как только посетитель попадет на эту страницу или через время.
Кто сделает рабочий скрипт хорошо заплачу.

Gvozd 24.12.2009 21:00

kkn74,
невозможно такое реализовать. браузер из соображений безопасности не даст сделать

subzey 25.12.2009 00:21

Цитата:

Сообщение от Gvozd (Сообщение 37163)
попробуй синхронный xmlhttprequest, или же отменять переход по ссылке

Уж не знаю почему, но именно эти символы вызвали у меня некотролируемую злость.

kkn74 25.12.2009 00:24

извините , но я не знаю что это

subzey 25.12.2009 00:25

Цитата:

Сообщение от kkn74 (Сообщение 39072)
Есть сайт первый

...а этот сайт — неконтролируемую тошноту.

Gvozd 25.12.2009 00:57

Цитата:

Сообщение от subzey
Уж не знаю почему, но именно эти символы вызвали у меня некотролируемую злость.

Батхерт?

subzey 27.12.2009 17:32

Цитата:

Сообщение от Gvozd (Сообщение 39123)

В терминах Луркмора, скорее, «FFFFFFFFFFFFFFFFFFFFUUUUUUUUU—!»

tenshi 28.12.2009 13:22

Цитата:

Сообщение от Kolyaj (Сообщение 37162)
var img = new Image();
img.src = 'stats/stats.php?mod=click';

юзеров с отключёнными картинками считать не будем?

Kolyaj 28.12.2009 13:28

Цитата:

Сообщение от tenshi
юзеров с отключёнными картинками считать не будем?

В данном конкретном случае нет. А что?

Michael83 06.01.2010 14:11

Сделайте в скрипте stats/stats.php возможность редиректа, то есть если передан параметр redirect={какой то урл} вы учитываете статистику а потом делаете редирект на указанный урл.
stats/stats.php?mod=click&redirect={урл}

Далее у всех ссылок на странице (или только тех у которых надо) вешаете событие на onclick в котором подменяете реальный href на тот что выше написал и все. Переход будет осуществлен на ваш скрипт который быстро (я надеюсь у вас это быстро работает) учтет клик и сделает редирект пользователь даже не заметит и браузер даже в историю переходов не запишет (так как был моментальный переход), то есть при переходе назад вы попадете не на свой скрипт а на нормальную страницу с которой ушли

tenshi 06.01.2010 18:57

в итоге, когда (а это неизбежно :-P) ляжет статистика - ляжет и весь сайт х))

Michael83 08.01.2010 13:25

Цитата:

Сообщение от tenshi (Сообщение 39797)
в итоге, когда (а это неизбежно :-P) ляжет статистика - ляжет и весь сайт х))

Если делать руками, то не ляжет, я так уже делал и уже как год все работает. Можете объяснить почему это неизбежно?

Все решения выше были больше похожи на хаки или пляски с бубном, мне кажется мое решение больше похоже на правду

tenshi 08.01.2010 13:26

потому, что нагрузки имеют свойство расти, а сервера падать

Michael83 08.01.2010 14:54

при таком повороте спорить дальше бессмысленно :) тут уже ничто не поможет


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