私はこれについてたくさんの投稿を見てきましたが、私がしようとしていたように機能したものはありません.
$(document).ready(function() {
$('#link_to_content').tigger('click');
});
ページが読み込まれたら、クリックをトリガーしたいと思います。ページが読み込まれるとリンクを開くのがおかしいことはわかっていますが、この場合は理にかなっています。
私はjquery 1.7を使用しています
私はこれについてたくさんの投稿を見てきましたが、私がしようとしていたように機能したものはありません.
$(document).ready(function() {
$('#link_to_content').tigger('click');
});
ページが読み込まれたら、クリックをトリガーしたいと思います。ページが読み込まれるとリンクを開くのがおかしいことはわかっていますが、この場合は理にかなっています。
私はjquery 1.7を使用しています
次のようにする必要があります。
$(document).ready(function() {
$('#link_to_content').trigger('click');
});
ここでの実例: http://jsfiddle.net/zpnQv/
編集:
リンクをたどりたい場合は、次のようにすることができます。
HTML:
<a href="http://www.yahoo.com/" id="link_to_content">Click Me</a>
JS:
$(document).ready(function () {
$("#link_to_content").click(function (e) {
e.preventDefault();
var href = $(this).attr("href");
alert("going to " + href);
window.location = href;
});
$('#link_to_content').trigger('click');
});
jQueryはリンクをクリックしません。私自身の解釈では、これは少しセキュリティ上のリスクであり、リンクされた回答が要約すると多かれ少なかれです。
HtmlDOMElement
ただし、リンクされた回答が示すように、Javascriptとそれを選択するだけです.click()
。
言い換えると:$('#link_to_content')[0].click();
トリガーしようとしているクリック ハンドラーは、おそらく $(document).ready() 経由でもアタッチされています。おそらく発生しているのは、ハンドラーがアタッチされる前にイベントをトリガーしていることです。解決策は、setTimeout を使用することです。
$("document").ready(function() {
setTimeout(function() {
$("#link_to_content").trigger('click');
},10);
});
10 ミリ秒の遅延により、すべての $(document).ready() ハンドラーが呼び出された直後に関数が実行されます。
また
.load(); のコールバック関数でトリガーを使用します。
trigger() の代わりに .on() を使用することもできます
$('div_to_load').load("#link_to_content",function(){
$("#link_to_content").trigger('click');
});
.on() の例
$('div_to_click').on("click",".title",function(){
alert('sdfdsf');
});