0

このコードを使用してオブジェクトのクリックをシミュレートしようとすると、このコードを html..

<script type='text/javascript'> 
   $(window).load(function() {
      $('#hellothere').click();
   });
</script>

うまくいかない...まったく!

4

2 に答える 2

2

ready()DOM の準備ができたら関数を使用してコードを実行する必要があります - http://api.jquery.com/ready/ -load()メソッドは新しいコンテンツをロードするためのものです - http://api.jquery.com/load/ - そしてあなたの目的には間違っています。trigger()その後、DOM オブジェクトでクリック イベントを発生させるために使用できます。

// run when the DOM is loaded
$(document).ready(function(){
    $('#hellothere')
         // Set up the click event
         .on('click', function(){ alert('you clicked #hellothere'); })
         // Trigger the click event
         .trigger('click');
});
于 2012-10-26T03:42:57.760 に答える
0

オブジェクトのクリックをシミュレートしようとしている場合は、トリガー メソッドを使用する必要があります。

$(function){
   $('#hellothere').trigger('click');
});

トリガーに関するドキュメントへのリンクは次のとおりです: http://api.jquery.com/trigger/

これは、クリック メソッドのコードです。

jQuery.fn.click = function (data, fn) {
  if (fn == null) {
    fn = data;
    data = null;
}

return arguments.length > 0 ? this.on(name, null, data, fn) : this.trigger(name);
}

ご覧のように; 関数に対して解析される引数がない場合、クリック イベントがトリガーされます。

したがって、.trigger("click") を使用すると、呼び出す関数が 1 つ少なくなります。 https://stackoverflow.com/a/9666547/887539

PS:

これは、jQuery のソース コードを調べるための便利なツールです: http://james.padolsey.com/jquery/

于 2012-10-26T03:43:10.133 に答える