2013-05-21 27 views
1

我試圖使用jQuery加載一個div裏面NIVO滑塊:使用jquery加載nivo滑塊點擊內部Div?

<a onclick='$("#content").load("slider/slider.html");'>Slider</a> 

但是,這並不工作,如果我雖然使用這個腳本,它工作正常:

<script> 
$(document).ready(function() { 
$("#content").load("slider/slider.html"); 
}); 
</script> 

知道爲什麼它在onclick上應用時不加載?

編輯:這裏是的jsfiddle但的onclick不爲我在所有的工作:jsfiddle.net/ZNUY6

+0

必須是您在'$(document).ready ...'中的初始化代碼''必須包含html後 –

+0

我不認爲代碼有問題,任何其他html加載都沒問題,只發生在這個特定的滑塊上鍊接被點擊時什麼也沒有顯示),還有其他想法? – lonewulf

+0

你能分享 –

回答

2

您需要加載這樣的數據:

<a onclick='javascript:$("#content").load("slider/slider.html");'>Slider</a> 

感謝希望這會幫助你。

2

A「更jQuery的」辦法是給你的a元素的類和目標滑塊網址:

<a class="ajax" href="slider/slider.html">Slider</a> 

然後在您的document.ready您設置了事件處理程序,它加載內容:

$(document).ready(function() { 
    $('.ajax').click(function() { 
     $('#content').load($(this).attr('href')); 
     return false; 
    }); 
}); 

return false阻止鏈接執行其默認行爲(即在鏈接之後)。

這個相同的類可以應用於很多鏈接,並且通過上面的代碼,它們會在單擊時將它們的內容(根據它們的href屬性)加載到#content元素中。

這樣做的好處是,你是給你的鏈接適當的URL HREF,仍然會以某種方式工作,即使沒有了JavaScript,這可能是重要的,如果內容需要通過搜索引擎索引等

+0

我已經試過這個,甚至與e.preventdefault();但沒有出現。還有什麼我可以做的嗎?基本上我的index.html包含這個滑塊,所以我必須鏈接到導航鏈接上的主html,但即使我使用index.html作爲鏈接,它也不起作用。 – lonewulf

0

我用了一個不同的滑塊,現在它可以工作,所以我認爲有一些兼容性問題或代碼問題,使用此方法時不會讓nivo滑塊重新加載。