2011-09-20 144 views
2

因此,我爲我的網站創建了一個TagCloud,並且遇到問題能夠使用JQuery來提醒我所選鏈接。 該網站創建的鏈接就好了,給了他們'tagLink'的類,但是當我嘗試提醒該類的元素數量時,它給了我0, 任何想法? 這裏是我的代碼:JQuery - 無法按類選擇動態創建的URL標記

$(function() { 
    //get tag feed 
    $.getJSON("tagcloud/tagcloud.php?callback=?", function(data) { 
      //create list for tag links 
     $("<ul>").attr("id", "tagList").appendTo("#tagCloud"); 
     //create tags 
     $.each(data.tags, function(i, val) { 
      //create item 
      var li = $("<li>"); 
      //create link 
      $("<a>").addClass('tagLink').text(val.tag).attr({title:"See all pages tagged with " + val.tag, href:"tags/" + val.tag + ".php", id: val.tag}).appendTo(li); 
      //set tag size 
      li.children().css("fontSize", (val.freq/10 < 1) ? val.freq/10 + 1 + "em": (val.freq/10 > 2) ? "2em" : val.freq/10 + "em"); 
      //add to list 
      li.appendTo("#tagList"); 
     }); 
    }); 

    //Increase database if link is clicked 
    alert($('.tagLink').size());//Test how many exist 
    $('.tagLink').click(function(){ 
     var id = $(this).attr('id'); 
     $.ajax({  
      url: "tagcloud/tagcloud.php", 
      type: "POST", 
      data: {clicked : id} 
     }); 
    }); 


}); 

回答

4

的getJSON是異步的所以你的選擇總是會自動運行會添加標籤鏈接之前。在您的AJAX回調中移動taglink單擊處理程序分配。

+0

啊,你是個天才!沒有抓住那個。謝謝! – JimmyJammed