-1

ここでの答えに従ってください:Click()はIEで機能しますが、Firefoxでは機能しません

「クリックは機能メッセージではありません」というエラーメッセージが表示されなくなり、実際に「クリックされました」というアラートメッセージが表示されますが、ブラウザはページに移動しません。最新バージョンのfirefoxで試してみましたが、Firefox2では発生しませんでした。

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");};
4

5 に答える 5

1

FF2は古すぎてクリックプロトタイプをサポートしているかどうかわからないので、より良い方法は次のようなものになると思います

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();
    });
于 2012-03-07T11:36:36.613 に答える
1

jQueryプラグインを試して、その.click()イベントを使用することができます。

詳細については、こちらをご覧ください。

お役に立てれば.. :)

于 2012-03-07T19:24:54.330 に答える
1

これを使用document.getElementById("anId").onclick();すると、すべてのブラウザで動作します。click();IE でのみ動作します。

于 2012-03-01T08:03:29.693 に答える
0

JQuery を使用してみてください... http://api.jquery.com/click/ onClick イベントを受け入れることを期待していない html 要素をリッスンしようとしている可能性があります。click()IE でのみ動作します。また、Jquery イベント リスナーclickを試す場合は、すべての主要なブラウザの問題をすべてカバーできます。

于 2012-03-08T06:48:22.973 に答える
0

この質問はすでにここで回答されています。

機能を追加するために使用するものは次のとおりです...

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);
}
于 2012-03-08T06:05:44.493 に答える