0

友人の 1 人から頭の体操として質問されました。リンクを挿入してクリックをシミュレートすることで、リファラーを偽装することは可能ですか? だから私は試してみることにしました.gmail.comで試してみて、これをfirebug javascriptコンソールで実行しました.

var headID = document.getElementsByTagName("head")[0];         
var newScript = document.createElement('script');
newScript.type = 'text/javascript';
newScript.src = 'https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js';
headID.appendChild(newScript);

$("#signIn").html('<a href="http://google.com" id="testing">Hmm</a>');
$("#testing").click();

興味深いことに、jquery が高速にロードされていないように見えるため、最初にエラーが発生しますが、主な重要なことは、要素が実際にクリックされないことです。何かアイデアはありますか?

4

1 に答える 1

1

jQuery のclickイベントは、実際には実際のクリック イベントをエミュレートしていません。オブジェクトのクリック イベントを呼び出すだけです。ハイパーリンクには (既定では) クリック イベントがありません。jQuery 関数を使用する代わりに.click、ネイティブの JavaScript.click関数を使用してみてください。

これは機能します:

document.getElementById("link").click();

これも機能します:

$("#link")[0].click();

これは機能しません:

$("#link").click();

この jsfiddleでデモを行います

于 2012-12-31T00:57:16.043 に答える