вызов функции в вопросе jquery - PullRequest
0 голосов
/ 08 сентября 2010

Я пытаюсь вызвать мою функцию loadPopup (), хотя и не могу использовать JQuery v1.3.2.какие-либо предложения?большое спасибо,

$(this).find("a").each(function(i) {
    if ($(this).hasClass("selected") == false) {

        $(this).css("background-color", "#efefef");
        alert(1);
        loadPopup();
        alert(2);                     

    }
})

function loadPopup() {
    alert("");       
}

Ответы [ 3 ]

0 голосов
/ 08 сентября 2010

Если вы начинаете с корня и ищете все ссылки <a>, вы должны заменить это:

$(this).find("a").each(function(i) {

с этим:

$("a").each(function(i) {

И вы можете еще больше уменьшить его, используя селекторы в своих интересах. В этом случае объедините :not() с селектором .class , чтобы получить все <a> без класса, например:

$("a:not(.selected)").css("background-color", "#efefef").each(function() {
  loadPopup();
});

Вы можете попробовать здесь .

0 голосов
/ 08 сентября 2010

Похоже, что вы не привязываете какое-либо событие к href . Вот почему, даже при нажатии на ссылку, ваш loadPopup() не вызывается.

Надеюсь, вам поможет следующий код:

$(this).find('A.selected').unbind('click').bind('click',function() { 
    loadPopup();

    });

Вы можете поместить либо $ (this) в приведенный выше код, если вы запрашиваете внутри строки таблицы и т.д. коллекции, либо можете использовать напрямую: $('A.selected').unbind .....

0 голосов
/ 08 сентября 2010

извините, не вставил все это.

          $(this).find("a").each(function(i) {
              if ($(this).hasClass("selected") == false) {

                  $(this).css("background-color", "#efefef");
                  alert(1);
                  loadPopup();
                  alert(2);                     

              }
          })
...