Javascript: нажмите (), не переходя по ссылке в Firefox 2
Следуя ответу здесь: Click () работает в IE, но не в Firefox
Я больше не получаю сообщение об ошибке "Click is not function message" и действительно получаю предупреждение "Clicked", однако браузер не переходит на страницу. Я попробовал это на последней версии Firefox, и он перемещается, просто не происходит в Firefox 2.
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);};
document.onclick= function(event) { if (event===undefined) event= window.event; var target=
'target' in event? event.target : event.srcElement; alert("clicked");};
document.getElementById("anId").click();
document.onclick= function(event) { if (event===undefined) event= window.event; var target=
'target' in event? event.target : event.srcElement; alert("clicked");};
5 ответов
Я думаю, так как FF2 слишком стар и не уверен, поддерживает ли он прототип click, лучше было бы что-то вроде этого
HTML
<a id="link" href="url">click here</a>
JS
$(document).ready(function(){
$("#link").click(function(){
window.location.href = $(this).attr('href');
});
});
также, если это что-то не так, попробуйте что-то вроде этого:
$(document).ready(function(){
$("#link")[0].click();
});
Использование document.getElementById("anId").onclick();
это будет работать во всех браузерах. click();
работает только на IE.
Попробуйте использовать JQuery... http://api.jquery.com/click/ возможно, вы пытаетесь прослушать HTML-элемент, который не ожидает принятия события onClick. click()
работает только в IE. и если вы собираетесь попробовать слушатель событий Jquery click
Вы можете охватить все проблемы во всех основных браузерах
На этот вопрос уже был дан ответ.
Вот что вы должны использовать, чтобы добавить функциональность...
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);
}