Событие jQuery Trigger срабатывает несколько раз - PullRequest
1 голос
/ 25 августа 2010

Я пытаюсь загрузить лайтбокс jQuery при загрузке страницы. Я попал туда на полпути. Лайтбокс открывается, когда страница загружается, но затем продолжает открывать ссылку в том же окне, что и полная страница. Как заставить его остановиться на этом этапе перед загрузкой ссылки в отдельном окне.

JQuery:

$(document).ready(function(){
  $("a.greybox").bind("click", openbox);
  $("a.greybox").trigger('click', openbox);

  function openbox(){
    var t = this.title || $(this).text() || this.href;
    GB_show(t,this.href,340,220);
  }
})

HTML:

<a href="http://google.com/" title="Google" class="greybox">Launch Google</a>

Ответы [ 2 ]

1 голос
/ 25 августа 2010

Если вы включите строку:

return false;

в вашей функции. Это остановит исходное поведение ссылок.

1 голос
/ 25 августа 2010
function openbox(evt){
    evt.preventDefault(); // <<-- Add this
    var t = this.title || $(this).text() || this.href; 
    GB_show(t,this.href,340,220);}
}
...