使用Javascript更改CSS值不起作用

时间:2013-03-26 07:12:17

标签: javascript html css

我正在尝试为我的网站开发一个聊天框。

<div class="chat_box1">
<div id="chat_box_bar">
    <p>(SOME PHP CODE HERE)</p>
        <p id="close_chat" onclick="close_chat_box(1)">X</p>

</div>
</div>

我想知道我是否将显示设置为&#34; none&#34;,并且可以将其更改为&#34; block&#34;只有在点击某些文字时才会为:

<li onclick='display_chat_box(chat_box_number(),"kamal@kamal.com")'>KAMAL</li>

javascript函数:

function display_chat_box(y,email)
{
   switch (y)
   {
        case 1:
        {
           alert("hi");
           document.getElementsByClass("chat_box1")[0].style.display="block";
        }
        case 2:
        {
           document.getElementsByClass("chat_box2")[0].style.display="block";
        }
        case 3:
        {
           document.getElementsByClass("chat_box3")[0].style.display="block";
        }
    }
}

我已经在第一种情况下插入了警报代码,以检查范围内的代码是否有效,并且当我运行网页时,警报框会弹出。

问题:显示属性不会更改为&#34;阻止&#34;来自&#34;无&#34;。不知道为什么,但它以某种方式在我之前工作的另一台PC上工作。

变量&#39; y&#39;从这个函数中获取它的值:

function chat_box_number()
{
    if(n==3)
        n=0;
    n++;
    return n;
}

这是CSS代码:

.chat_box1,.chat_box2,.chat_box3
{
   display: none;
   width: 20%;
   position: fixed;
   bottom:0;
   margin-right: 10px;
   border-style: solid;
   border-width: thin;
   height:30%;
   font-family: comic sans ms;
   font-size: 12px;
}

请帮助。

2 个答案:

答案 0 :(得分:0)

我现在还没注意到,但我认为你的switch语句不是有效的javascript

撰写案例时,您应该执行以下操作:

case 1:
   whatever_you_want_to_do();
   break;

而不是

case 1:
{
   whatever_you_want_to_do();
}

正确使用的功能是getElementsByClassName而不是getElementsByClass

答案 1 :(得分:-1)

如果你设置怎么办?...

whatever.style.display="block !important";