2011-06-24 220 views
0

夥計們,所以我解決了如何在ajax調用後加載插件的問題,但現在我正在研究如何在另一個ajax調用中的ajax調用之後加載插件。 ajax部分功能完美,但插件未加載。 下面是代碼:jquery和ajax需要幫助

$(document).ready(function() { 

     var container = $("#content"); 

     var link; 
     $("a.links").click(function (event) { 

      event.preventDefault(); 
      link = $(this).attr("href") + " #content"; 
      var link2 = $(this).attr("href"); 
      container.load(link, function() { 

       if (link2 == 'gallery.html') { 
        $("a.glinks").click(function (event) { 
         event.preventDefault(); 
         link2 = $(this).attr("href") + " #content"; 
         $("#content2").load(link2, function() { 

          var link3 = $("<link>"); 
          link3.attr({ 
           type: 'text/css', 
           rel: 'stylesheet', 
           href: 'C:\wamp\www\css\jquery.lightbox-0.5.css' 
          }); 
          $("head").append(link3); 

          $('#gallery a').lightBox(); 
         }); 
        }); 
       } 
      }); 
     }); 

我也試圖重新載入樣式表。

+0

到底是什麼C:\這裏?只要把你的文件路徑。 – Prashanth

+0

我嘗試過,但仍然無效。 – anonymous123

回答

0

那麼,你真的不需要任何這種嵌套。

只需從原始文檔加載樣式表。您不需要動態加載它:

<link type="text/css" rel="stylesheet" media="all" href="C:\wamp\www\css\jquery.lightbox-0.5.css"> 

注意:如果href是相對路徑,那將是最好的。

現在,凝聚了JS只是一個live點擊:

$(document).ready(function() { 

    $("a.links, a.glinks").live('click', function (event) { 
     event.preventDefault(); 
     var link = $(this).attr("href") + " #content"; 
     var target_div = $(this).hasClass('glinks') ? "#content2" : "#content"; 

     $(target_div).load(link, function() { 
      $(this).find('#gallery a').lightBox(); 
     }); 
    }); 
}); 
+0

該代碼完美工作,thanx爲您提供幫助。 – anonymous123