日期:2014-05-16  浏览次数:20346 次

JS修改CSS样式
页面打开“产品资料”显示为绿色,“产品软件”显示为白色,点击“产品软件”显示为绿色,产品资料”显示为白色。现在的问题是由于使用<a>样式不好控制,如果设置a:link颜色为绿色,点击“产品软件”时,两个都显示为绿色,如何清除原有样式或改变a:link的样式?
HTML code

                <script language="JavaScript1.2">
                
function showhidediv(id){

    if (id == 'btn1_div') 
    {
        btn1_div.style.display='';
        btn2_div.style.display='none';
        document.getElementById("btn1").className="down_btn1 font18bg";
        document.getElementById("btn2").className="down_btn font18b";
    } 
    else 
    {
        btn1_div.style.display='none';
        btn2_div.style.display='';    
        document.getElementById("btn1").className="down_btn font18b";
        document.getElementById("btn2").className="down_btn1 font18bg";    
    } 
    
 

}

</script>
<div id="btn1" class="down_btn1 font18bg"><a href="#" onclick="showhidediv('btn1_div')">产品资料</a></div>
                    <div class="down_space8"></div>
                    <div id="btn2" class="down_btn font18b"><a href="#" onclick="showhidediv('btn2_div')">产品软件</a></div>
                    <div class="down_space"></div>



------解决方案--------------------
楼主的意思应该是设置的样式被a.link的原有样式覆盖掉了吧
把链接改白色的时候同时把链接的href属性移除掉试试
------解决方案--------------------
因为你定义了a.link的样式,所以你对带有href属性的a标签设置的样式都会被a.link覆盖。。应该是这个问题。。按你得要求,,你可以试试把a.link的样式设定成默认的白色以后,,把想设置成绿色的标签的href属性去掉,,比如
JScript code

if (id == 'btn1_div') 
    {
        btn1_div.style.display='';
        btn2_div.style.display='none';
        document.getElementById("btn1").className="down_btn1 font18bg";
        document.getElementById("btn1").removeAttribute("href");
        document.getElementById("btn2").className="down_btn font18b";
        document.getElementById("btn2").setAttribute("href","#")
    }