だから私はjQueryが初めてで、タブを持つhtmlページを設定しようとしています。各タブには、次のように異なる HTML ページが表示されます。
<div id="tabs">
<a href="page1.html"><div class="tabdiv tabActive">Page1</div></a>
<a href="page2.html"><div class="tabdiv">Page2</div></a>
<a href="page3.html"><div class="tabdiv">Page3</div> </a>
<a href="page4.html"><div class="tabdiv">Page4</div></a>
</div>
<div class="tabscontent" id="ajax-content">
Default text
</div>
だから私が欲しいのは、ページ1をクリックすると、page1.htmlが.htmlにロードされるということdiv.tabscontent
です。これは私が持っているjQueryコードです。
$(document).ready(function() {
$("div#tabs a").click(function() {
alert(this.href);
$("#ajax-content").empty().append("Loading");
$("div#tabs div.tabdiv").removeClass('tabActive');
$(this).children('div.tabdiv').addClass('tabActive');
$.ajax({
url: this.href,
success: function(html) {
$("#ajax-content").empty().append(html);
alert("Success!");},
error: function() {
$("#ajax-content").empty().append("Didn't work");}
});
return false;
});
});
注:1)最新のjqueryが添付されています2)page1.html、page2.htmlなどは上記のhtmlファイルと同じフォルダーにあります。3) 私はローカルで作業しており、google-chrome、firefox、opera を試しましたが、すべて「動作しませんでした」というタブがありました。URL でhttp://www.facebook.comを参照しても機能しません。私を助けてください。
そこにアラートを入れて、hrefが機能するかどうかを確認し、機能します。たとえば、page1 タブの場合、「file:///u/b/user/Desktop/ajaxdemo/Page1.html」が返されます。