вызвать триггер клика с помощью jQuery - PullRequest
8 голосов
/ 28 мая 2009

Я не могу вызвать клик на теге тела с помощью jQuery, я использую это ...

$('body').click();

даже это не удается

$('body').trigger('click');

Есть идеи?!

Ответы [ 5 ]

11 голосов
/ 28 мая 2009

интересно .. когда я заменил

$("body").trigger("click")

с

jQuery("body").trigger("click")

ЭТО РАБОТАЛО !!!

9 голосов
/ 28 мая 2009

У вас должно быть что-то вроде этого:

$('body').click(function() {
   // do something here
});

Функция обратного вызова будет вызываться, когда пользователь щелкает где-то на веб-странице. Вы можете вызвать обратный вызов программно с помощью:

$('body').trigger('click');
6 голосов
/ 28 мая 2009

Я использовал следующий код несколько раз, и он прекрасно работает:

$("body").click(function(e){
  //you can then check what has been clicked
  var target = $(e.target);  
  if (target.is("#popup")) { }
}); // Added ); this for correct syntax
2 голосов
/ 06 сентября 2010

если все сказанное не сработало, вернитесь к основам и проверьте, работает ли оно:

<html>
  <head>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js"></script>
  </head>
  <body>
    <script type="text/javascript">
      $('body').click(function() {
        // do something here like:
        alert('hey! The body click is working!!!')
      });
    </script>
  </body>
</html>

тогда скажите мне, работает ли он или нет.

0 голосов
/ 02 июля 2017

Как уже упоминал Seeker, проблема могла заключаться в том, что вы слишком быстро настроили функцию click(). Из вашего фрагмента кода мы не можем знать, где вы разместили скрипт и запускается ли он в нужное время.

Важным моментом является запуск таких сценариев после того, как документ готов. Это делается путем помещения инициализации click() в эту другую функцию, как в:

jQuery(document).ready(function()
  {
    jQuery("body").click(function()
      {
        // ... your click code here ...
      });
  });

Обычно это лучший метод, особенно если вы включаете свой код JavaScript в тег <head>. Если вы включите его в самом низу страницы, то функция ready() не так важна, но все же может быть полезной.

...