2012-07-31 105 views
4

我已經加載數據與$('#result').load('test.php')文件,這是完全正常工作。衝突多個.load()事件jquery

這裏是test.php screenshoot enter image description here

現在,這裏是我的燈箱加載的文件: enter image description here

在我test.php文件我也加載另一個文件在燈箱上單擊事件。燈箱正確顯示新加載的文件。這裏是代碼調用lighbox:

jQuery('#wt_opp_coll .coun').click(function(){ 
     jQuery(this).jpLightBox({ 
      width: 500, 
      height: 250, 
      url: 'components/content/test_file.php' 
      //message: 'Just Testing the file' 
     }); 
    }); 

本我的新加載的文件,該文件是test_file.php出現以及在燈箱,但我最後加載文件test.php消失的收藏夾,當你在第二screenshoot只看到燈箱出現而不是第一個屏幕截圖中的背景細節。

請幫我停止消失我上次加載的文件(test.php)也。

NOTE:我也使用​​函數在lighbox中加載url。

+0

背景數據是否消失或被新的test_file.php數據替代? – SharkyLV 2012-07-31 08:48:14

+0

@SharkyLV感​​謝您的回覆,後臺數據消失未被取代,我有線索但不知道如何解決,這是因爲這兩個文件都顯示'.load()',但是當我打電話給第二個文件在lighbox'test_file.php'中,然後第一個文件消失。 – 2012-07-31 08:50:57

回答

0

我還沒有做LightBox的任何事情,但問題可能是你用新的燈箱取代#wt_opp_coll .coun

jQuery('#wt_opp_coll .coun').click(function(){ 
     jQuery(this).jpLightBox({ 
      width: 500, 
      height: 250, 
      url: 'components/content/test_file.php' 
      //message: 'Just Testing the file' 
     }); 
    }); 

第二線具有jQuery(this),其指示與母體#wt_opp_coll .coun。所以我認爲正在發生的是燈箱正在取代#wt_opp_coll .coun的內容。

+0

humm讓我檢查。 – 2012-07-31 08:55:43

+0

我認爲檢查的最簡單方法是用代碼中的任何其他塊代替'jQuery(this)'。例如。 'jQuery(「body」)'看看這個塊是否消失。 – SharkyLV 2012-07-31 09:03:22

+0

noop第二個文件被添加到'jQuery(this)之外的其他div中「指的是'jQuery(this)的body和parent的子節點' – 2012-07-31 10:39:05

0

我不能告訴你是什麼原因導致這個奇怪的問題,但我也有一個問題,它回來了。我解決它的方式是使用livequery來處理我的點擊事件。不要問我爲什麼,我花了幾個小時瀏覽圖書館和文件,並試圖找到別人的答案無濟於事。

給它一個鏡頭,如果你沒有使用livequery的問題,它可能是你的解決方案。

這是我的代碼片段,它用於多達50個不同的負載調用實例,所有這些實例都可以工作。有些是由其他加載數據動態創建的鏈接。

function ajaxContent(link, sel, reg, extReg) { 
$(sel).not(link).removeClass("active"); 
$(link).addClass("active"); 

var toLoad = $(link).attr('href')+ ' ' + extReg; 

$(reg).fadeOut('slow',loadContent); 

function loadContent() { 
    $(reg).load(toLoad,'',showNewContent()) 
} 

function showNewContent() { 
    $(reg).delay(200).fadeIn('slow'); 
} 

} 

$(document).ready(function() { 

// Top left "main" nav 
$('#jax-nav li a').livequery("click", function(event) { 
    ajaxContent(event.target, '#jax-nav li a', '#page-content', '#ajax-out'); 
    return false; 
});  
0

試着將一個空的div在HTML的收藏夾

<div id="lightBoxDiv"></div> 

和編輯代碼

jQuery('#wt_opp_coll .coun').click(function(){ 
     jQuery("#lightBoxDiv").jpLightBox({ 
      width: 500, 
      height: 250, 
      url: 'components/content/test_file.php' 
      //message: 'Just Testing the file' 
     }); 
    }); 

,你還需要刷新這個div對關閉按鈕的內容其他明智它會影響你的基地html

把此代碼嵌入到標籤關閉按鈕

$("#lightBoxDiv").html('');