2013-03-27 110 views
2

我有頁面,其中div內容從外部* .php文件加載。一切工作完美,但是當我想在加載的頁面上使用縮放插件,它不起作用。在.load()頁面後執行javascript頁面

我的頁面結構:

<div id="wrapper"> 
<img id="zoom" src="example.jpg"/> /**zoom plugin works here**/ 
    <a href="external_content">button which onclick load external content</a> 
    <div id="external_content"> 
    <p>a lot of text here</p> 
    <img id="zoom2" src="example2.jpg"/> /**zoom plugin doesn't work here**/ 
    </div> 
</div> 

我懷疑問題是加載頁面後,該腳本不執行。我讀了很多關於這個網站的例子,但沒有人不幫我

這裏是我的.html文件

<html> 
    <head> 
     <script type="text/javascript" src="js/jquery-1.9.1.min.js"></script> 
     <script type="text/javascript" src="js/ajax.js"></script> 
     <script type="text/javascript" src="http://www.dynamicdrive.com/dynamicindex4/ddpowerzoomer.js"></script> 
     <script type="text/javascript"> 
     jQuery(document).ready(function($){ 
      $('#zoom').addpowerzoom(); 
      $('#zoom2').addpowerzoom(); 
     }); 
     </script> 
    <head> 
    </html> 

和加載外部內容主要腳本是這裏

jQuery.noConflict() 
jQuery(document).ready(function() { 
    var hash = window.location.hash.substr(1); 
    var href = jQuery('#nav li a').each(function(){ 
      var href = jQuery(this).attr('href'); 
     if(hash==href.substr(0,href.length-4)){ 

      var toLoad = hash+'.html #content_low'+divId; 
      jQuery('#content'+divId).load(toLoad); 
     }           
    }); 

    jQuery('#nav li a').click(function(){ 
     divId = jQuery(this).parents('li').attr('id'); 
     var toLoad = jQuery(this).attr('href')+' #content_low'+divId; 

     jQuery('#content'+divId).slideUp(500,loadContent); 

     function loadContent() { 
      jQuery('#content'+divId).load(toLoad,showNewContent) 
     } 
     function showNewContent() { 
      jQuery('#content'+divId).delay(200).slideDown(800); 

      jQuery("#urun_ac").fadeOut(100); 


     } 
     return false; 

    }); 
}); 

回答

0

您必須再次調用回調函數中的縮放功能:

function showNewContent() { 
    jQuery('#content'+divId).delay(200).slideDown(800); 

    jQuery("#urun_ac").fadeOut(100); 

    $('#zoom').addpowerzoom(); 
    $('#zoom2').addpowerzoom(); 

} 
+0

ooh。如此簡單的O_o我花了3天的時間來解決這個問題。非常感謝Matei Mihai。問題解決了 – DSI 2013-03-27 10:01:18

+0

歡迎您! :) – 2013-03-27 10:03:07