Задать вопрос
kemply
@kemply
школьник

Как имитировать клик ссылки?

Есть вот такая ссылка:
<a href="http://mysyte.ru?key=06302971331678253" class="link" onclick="javascript: secondLink(this);" onmouseover="javascript: firstLink(546374,event);">ссылка</a>

и вот такой скрипт на JavaScript
function secondLink(fullLink) {
	fullLink.href += $firstLink + "980915&pg=http://site.com/";
}
function firstLink(link, e) {
	x = e.pageX;
	y = e.pageY;
	if (!x) {
		x = window.event.x;
		y = window.event.y;
	}
	x = x % 100;
	if (x < 10)
		x += 10;
	y = y % 100;
	if (y < 10)
		y += 10;
	$firstLink = "" + link + x + y;
}

но такой код (с библиотекой jQuery) не работает
$(document).ready(function(){
   setTimeout(function(){
      var $click = $('.link');
      $click.click();
   }, 5000);
});

Я думал, что при клике, он сгенерирует полную ссылку на сайт, но это не происходит.
Как сделать так, чтобы через 5 секунд, генерировалась полная ссылка от наведения и от клика и переходила по нему?
  • Вопрос задан
  • 7213 просмотров
Подписаться 3 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 2
zona7o
@zona7o
Веб-разработчик
Если можно переписать ссылку и если я правильно понимаю задачу, то

<a href="http://mysyte.ru?key=06302971331678253" class="link" data-id="546374">ссылка</a>


function firstLink(link, e) {
	x = e.pageX;
	y = e.pageY;
	if (!x) {
		x = window.event.x;
		y = window.event.y;
	}
	x = x % 100;
	if (x < 10)
		x += 10;
	y = y % 100;
	if (y < 10)
		y += 10;
	return "" + link + x + y;
}

$(document).ready(function(){

	$('.link').on('click', function(e){
		e.preventDefault();
		var _this = $(e.currentTarget);
		var $id = firstLink( _this.data('id'), e);
		_this.attr('href', _this.attr('href') + $id + "980915&pg=http://site.com/");
		setTimeout(function(){
			document.location = _this.attr('href');
		}, 5000);
		return false;
	});

});


P.S. Спасибо @podvzbzdnul за замечание
Ответ написан
bootd
@bootd
Гугли и ты откроешь врата знаний!
$('.link').trigger('click');
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы