У меня есть код, который тривиален, но только работает в IE не Firefox.
$(document).ready(function(){
$('li#first').click();
});
Я также попробовал:
document.getElementById('first').click();
Но это не работает также.
Это ошибка/функция IE или click()
не поддерживаемый в других браузерах?
Ответ на комментарии:
$('li#first').click()
только новое запущенное событие, но физически нажатие на элемент с мышью стреляло и (новый и исходный).Заранее спасибо.
Firefox не поддерживает функцию click().
Выполнение document.getElementById('first').click()
возвращает следующую ошибку click не является функцией
Поэтому я добавил фрагмент кода для добавления функции click() к каждому элементу. Этот код был найден после мучительной серии поисков в Google, в результате чего появилась эта тема.
Сниппет приведен ниже и должен быть включен только один раз на странице:
HTMLElement.prototype.click = function() {
var evt = this.ownerDocument.createEvent('MouseEvents');
evt.initMouseEvent('click', true, true, this.ownerDocument.defaultView, 1, 0, 0, 0, 0, false, false, false, false, 0, null);
this.dispatchEvent(evt);
}
Вы пытаетесь перейти по первой ссылке? Вы не можете вызвать действие ссылки по умолчанию через щелчок.
Но вот обходной путь:
var link = jQuery("#first>a", this)
if(!link.onclick) window.open(link.href, link.target || "_self")
else jQuery(link).click()
Источник: http://forum.jquery.com/topic/jquery-a-0-click-not-working