2011-04-13 75 views
1

我有一個說五個按鈕的文檔。 在這排按鈕下方,我生成一個佔位符div。 當我點擊一個按鈕時,我使用load()從另一個頁面(每個按鈕將一個HTML塊加載到佔位符div)加載到佔位符a divjQuery的getScript()+加載()加載內容不工作

好吧,我的問題是,我加載到佔位符塊是幻燈片(anythingslider)。 即使我在主頁上有另一個幻燈片顯示,並且所有相關的CSS和JS已經加載,它們也不會工作。

據我發現我需要使用getScript(),但我似乎還沒有掌握它。我是否需要重新加載相關腳本?

預先感謝您的任何幫助 - K

+0

我很困惑究竟是什麼問題。你能詳細說明什麼是不工作? JavaScript沒有加載?你是否得到js錯誤?調用load時,html是否加載? – Max 2011-04-13 20:33:14

+0

這是你在找什麼? http://www.w3schools.com/jquery/tryit.asp?filename=tryjquery_ajax1 – 2011-04-13 20:39:17

+0

我有一個完美的幻燈片工作集apage。進一步向下翻頁,我想通過load()加載另一個幻燈片;但是,即使我想要加載到母版頁中的幻燈片放映與頁面上已有的幻燈片放映完全一樣,加載的幻燈片也不會工作,即它看起來與我的瀏覽器中禁用JavaScript一樣。 – Kevin 2011-04-13 20:43:31

回答

0

這聽起來像你加載HTML到您的網頁,但你後不實例滑塊。從另一個頁面加載html不會覆蓋在其他頁面上運行的JS對象。

+0

也不會執行任何腳本或函數。你也不希望他們! – 2011-04-13 20:39:01

+0

所以我需要instanciate,即使適當的js + css文件已經存在於包含'已加載'內容的頁面中? – Kevin 2011-04-13 20:39:49

1

聽起來好像你只需要從回調函數中初始化滑塊(在內容被加載後調用)。該守則將是這個樣子:

$('div#placeholder1').load('content.html', function() { 
    // target the loaded div, find the slider and initialize it 
    $('div#placeholder1').find('ul.slider').anythingSlider({ /* options */ }); 
}); 
0

我通過​​遇到加載內容同樣的問題,我所有的劇本我所加載的內容使用。

試圖把script.js放在頂部,底部,甚至在沒有任何解決方案的情況下加載 內容。

我該如何修復它?

編輯:

就找到了答案:

$(document).ajaxComplete(function(){ 
    // fire when any Ajax requests complete 
}) 

LINK:Running JQuery scripts on AJAX loaded content

0

這爲我在得到 「jQuery的相關內容」 加載到一個網頁文件的工作。我個人喜歡把東西放在函數中,因爲當你有其他腳本時,它更易於維護。我創建了一個名爲globalSections的函數,只要我保持以下模式,就可以在任何頁面上使用它。在函數中,我創建了一個ID爲「header」的div元素。然後我把我的外部「jquery相關內容」加載到新創建的div中。 最後,獲取使內容運行所需的腳本。

$.globalSections = function() { 
    $('#wrapper').prepend('<div id="header"></div>'); 
    $('#header').load('/myfile.html', function() { 
    $.getScript("js/jquery.scripts.js"); 
    }); 
} 

然後運行功能

$(function() { 
    $.globalSections(); 
}); 

簡短