Событие щелчка в Jquery

#javascript #jquery #html #anchor

#javascript #jquery #HTML #привязка

Вопрос:

У меня есть jquery, в котором есть событие щелчка, когда нажимается любой тег привязки.

 $(document).ready(function () 
{
    $("a").click(function (e) 
    {
        e.preventDefault();               
        $('#myModal').load($(this).attr('href'));
        $('#myModal').reveal();
    });    
});
  

У меня также есть другой якорь с идентификатором «закрыть». Я хочу, чтобы событие щелчка запускалось при нажатии на любой из привязок, кроме той, у которой есть идентификатор ‘close’. У другого якоря нет идентификатора.

Как я могу этого добиться? Спасибо.

Комментарии:

1. Кажется, что вы описали if() синтаксис, который вам требуется.

Ответ №1:

Вы должны иметь возможность использовать метаселектор ‘not’.

http://api.jquery.com/category/selectors/

http://api.jquery.com/not-selector/

 $(function () {
  $("a:not(#close)").click(function (e) {
    e.preventDefault();               
    $('#myModal')
      .load($(this).attr('href'))
      .reveal();
  });    
});
  

Ответ №2:

 $(document).ready(function () 
{
    $("a:not('#close')").click(function (e) 
    {
        e.preventDefault();               
        $('#myModal').load($(this).attr('href'));
        $('#myModal').reveal();
    });    
});
  

Ответ №3:

Вы могли бы сделать это :

 $(document).ready(function () 
{
    $("a[id!='close']").click(function (e) 
    {
        e.preventDefault();               
        $('#myModal').load($(this).attr('href'));
        $('#myModal').reveal();
    });    
});