更改活动选项卡背景颜色

时间:2014-03-04 06:54:44

标签: html mysql css jstl

我正在使用jstl动态生成标签。 当我单击选项卡时,CSS样式将应用于动态生成的所有选项卡,而不是选定的选项卡。 我的代码就像这样

<sql:setDataSource var="data" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/sample" user="root" password="sample" />
<sql:query dataSource="${data}" var="rs">SELECT DISTINCT component FROM `sample` ORDER BY id DESC LIMIT 7 ;</sql:query>
<ul>
    <li><a href="LandingPage.jsp">Home</a>
    </li>
    <c:forEach var="row" items="${rs.rows}">
        <li> <a href="ComponentPage.jsp?name=${row.component}" id="onlink"> <c:out value="${row.component}" /></a>

        </li>
    </c:forEach>
</ul>

我有像这样的css代码

#navbar {
    width: 660px;
}
#navbar #holder {
    height: 31px;
    border-bottom: 1px solid #000;
    width: 1324px;
    padding-left: 25px;
}
#navbar #holder ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
#navbar #holder ul li a {
    text-decoration: none;
    float: left;
    margin-right: 5px;
    line-height: 10px;
    font-family:"Arial Black", Gadget, sans-serif;
    color: #000;
    border: 1px solid #000;
    border-bottom: none;
    padding: 10px;
    width: 105px;
    text-align: center;
    display: block;
    background: #69F;
}
#navbar #holder ul li a:hover {
    background: #F90;
    color: #FFF;
    text-shadow: 1px 1px 1px #000;
}
#holder ul li a#onlink {
    background: #FFF;
    color: #000;
    border-bottom: 1px solid #FFF;
}
#holder ul li a#onlink:hover {
    background: #FFF;
    color: #69F;
    text-shadow: 1px 1px 1px #000;
}

任何人都可以帮我为所选颜色应用背景颜色吗?

3 个答案:

答案 0 :(得分:1)

您可以使用jquery轻松完成此操作。创建一个具有所需背景颜色的活动类,并使用jQuery方法addClass和removeClass,您可以在单击它时将该类应用于特定选项卡!希望它能帮到你!

答案 1 :(得分:0)

将此代码添加到您的CSS样式,更改活动标签的背景颜色

ul > li.active > a{
/*code here*/
background-color:#cccccc
}

ul > li:active > a{
/*code here*/
background-color:#cccccc
}

答案 2 :(得分:0)

我发现简单的解决方案。点击li元素,将元素名称设置为url。 如果匹配仅更改背景颜色,则形成获取值的网址。 这是一个简单的方式,它可能对某些人有帮助..

<script>
var full_url = document.URL; 
var url_array = full_url.split('=');
var name = url_array[url_array.length-1]; 


$("a:contains("+name+")").css("background-color", "white");



</script>