内容未在标签中加载

时间:2011-11-13 18:05:41

标签: javascript jquery html css ajax

您好我的jquery标签有点麻烦,由于某种原因它加载了第一个标签内容,但是当我选择另一个标签时,内容不会显示。当我尝试回到第一个标签时,它也不会加载。

这是html

JavaScript / DHTML / AJAX Syntax (Toggle Plain Text)
<div id="content">
<div id="tabsX">
  <div id="tabContent">
  <ul class="tabs">
    <li><a id="all" href="#all" class="all">All</a></li>
    <li><a id="free" href="#free" class="free">Free</a></li>
    <li><a id="paid" href="#paid" class="paid">Paid</a></li>
    <li><a id="completed" href="#completed" class="completed">Completed</a></li>

    <div id="filter"><select name="filterQuest">
      <option>Name</option>
      <option>Payout</option>
      <option>Difficulty</option>
    </select></div>
  </ul>


<div class="tab_container">
    <div id="all" class="tab_content">
        asddd
    </div>
    <div id="free" class="tab_content">
       <!--Content-->adadada
    </div>
    <div id="paid" class="tab_content">
       <!--Content-->adad
    </div>
    <div id="completed" class="tab_content">
       <!--Content-->adsasd
    </div>

</div><!--- end tab_container--->
  </div><!---end tab content--->
  <br class="clear" />
</div><!--- end tabsX--->
<div id="tournament"></div><!--- end tournament--->
</div><!--- end content--->

这是javascript

JavaScript / DHTML / AJAX Syntax (Toggle Plain Text)
<script type="text/javascript"
src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js"></script>
<script type="text/javascript">

$(document).ready(function() {

    //Default Action
    $(".tab_content").hide(); //Hide all content
    $("ul.tabs li:first").addClass("active").show(); //Activate first tab
    $(".tab_content:first").show(); //Show first tab content

    //On Click Event
    $("ul.tabs li").click(function() {
        $("ul.tabs li").removeClass("active"); //Remove any "active" class
        $(this).addClass("active"); //Add "active" class to selected tab
        $(".tab_content").hide(); //Hide all tab content
        var activeTab = $(this).find("a").attr("href"); //Find the rel attribute value to identify the active tab + content
        $(activeTab).fadeIn(); //Fade in the active content
        return false;
    });

});
</script>

这是css

JavaScript / DHTML / AJAX Syntax (Toggle Plain Text)
@charset "utf-8";
/* CSS Document */

ul.tabs {
    padding: 0;
    float: left;
    list-style: none;
    height: 56px;
    width: 100%;
    margin-top: 0;
    margin-right: 0;
    margin-bottom: 0;
    margin-left: 0;
    border-bottom-width: 1px;
    border-bottom-style: ridge;
    border-bottom-color: #999;
    position:relative;


}
#tabsX {
    width: 800px;
    padding-left: 20px;
    float: left;
}
#tabsX .clear {
    clear: both;
}



ul.tabs li {
    float: left;
    padding: 0;
    height: 55px;
    line-height: 53px;
    margin-bottom: -1px;
    overflow: hidden;
    position: relative;
    margin-top: 0px;
    margin-right: 20px;
    margin-left: 0;
    font-family: Georgia, "Times New Roman", Times, serif;
    font-size: 12px;


}
ul.tabs li a {
    text-decoration: none;
    color: #333;
    display: block;
    font-size: 1.2em;
    padding: 0 20px;
    outline: none;
    position:relative;

}
/*ul.tabs li a:hover {
    color: #9C3;
    text-transform: none;
}*/
html ul.tabs li.active a.all,
ul.tabs li  a.all:hover {
    color: #999;
    text-transform: none;
    border-bottom-width: thick;
    border-bottom-style: ridge;
    border-bottom-color: #999;
}
html ul.tabs li.active a.free,
ul.tabs li  a.free:hover {
    color: #7ED200;
    text-transform: none;
    border-bottom-width: thick;
    border-bottom-style: ridge;
    border-bottom-color: #7ED200;
}   
html ul.tabs li.active a.paid,
ul.tabs li  a.paid:hover {
    color: #CB0C01;
    text-transform: none;
    border-bottom-width: thick;
    border-bottom-style: ridge;
    border-bottom-color: #E40D01;   
}
html ul.tabs li.active a.completed,     
ul.tabs li  a.completed:hover {
    color: #06C;
    text-transform: none;
    border-bottom-width: thick;
    border-bottom-style: ridge;
    border-bottom-color: #06C;
}

.tab_container {
    clear: both;
    /*float: left;*/
    width: 100%;
    border-right: 1px ridge #999;
    margin-bottom: 20px;
    min-height: 930px;

}
.tab_content {
    padding: 20px;
}

.tab_content img {
    float: left;
    margin: 0 20px 20px 0;
    border: 1px solid #ddd;
    padding: 5px;
}
#tabContent #filter {
    float: right;
    margin-top: 17px;
    margin-right: 50px;
}

1 个答案:

答案 0 :(得分:1)

首先,HTML ID属性必须是唯一的。在您的示例中,多个元素具有相同的ID,这是错误的(对于XHTML验证和JS - 这都会导致错误)。

其次,您是否使用调试器查看单击链接时$(this)包含的内容?

最后,“班级转换”的东西有效吗?我们需要您提供更多信息: - )