2016-01-14 61 views
0

我已经阅读了一些关于SO的帖子,但在我的情况下,我正在关注所有这些东西,但仍然显示:无不隐藏元素。下面是代码显示:none style not working

jQuery(function($) { 
 
    var socket = io.connect(); 
 
    var $messageForm = $('#message-box'); 
 
    var $messageBox = $('#message'); 
 
    var $chat = $('#chat'); 
 

 
    var $users = $('#users'); 
 

 
    var $nickForm = $('#setNick'); 
 
    var $nickError = $('#nickError'); 
 
    var $nickBox = $('#nickname'); 
 

 
    $('#message').keydown(function(event) { 
 
    if (event.keyCode == 13) { 
 
     $(this.form).submit() 
 
     return false; 
 
    } 
 
    }); 
 

 
    $nickForm.submit(function(e) { 
 
    e.preventDefault(); 
 
    socket.emit('new user', $nickBox.val(), function(data) { 
 

 
     if (data) { 
 
     $('#nickWrap').hide(); 
 
     console.log("Showing Content Wrap"); 
 
     $('#contentWrap').show(); 
 
     } else { 
 
     $nickError.html("That nickname is already taken , try something else"); 
 
     } 
 

 
    }); 
 
    $nickBox.val(''); 
 
    }); 
 

 

 

 
    socket.on('usernames', function(data) { 
 
    var html = '<ul>'; 
 
    for (i = 0; i < data.length; i++) { 
 
     html += '<li>' + data[i] + '</li>'; 
 
    } 
 
    html = html + '</ul>'; 
 
    $users.html(html); 
 
    }); 
 

 
    $messageForm.submit(function(e) { 
 
    e.preventDefault(); 
 
    socket.emit('send message', $messageBox.val(), function(data) { 
 
     $chat.append("<span class='error'>" + data + "</span><br/>"); 
 
    }); 
 
    $messageBox.val(''); 
 
    }); 
 

 
    socket.on('new message', function(data) { 
 
    $chat.append("<span class='msg'><b>" + data.nick + " :</b>" + data.msg + "</span><br/>"); 
 
    }); 
 

 
    socket.on('whisper', function(data) { 
 
    $chat.append("<span class='whisper'><b>" + data.nick + " :</b>" + data.msg + "</span><br/>"); 
 
    }); 
 

 
    socket.on('private', function(data) { 
 
    $chat.append("<span class='whisper'><b>" + data.nick + " :</b>" + data.msg + "</span><br/>"); 
 
    }); 
 

 
});
html { 
 
     background-color: #a79580 !important; 
 
    } 
 
    body { 
 
     padding-top: 20px; 
 
     font-size: 16px; 
 
     background: transparent; 
 
    } 
 
    #contentWrap { 
 
     display: none !important; 
 
    } 
 
    .whisper { 
 
     color: grey; 
 
     font-style: italic; 
 
    } 
 
    .error { 
 
     color: red; 
 
    }
<html> 
 

 
<head> 
 
    <title>Socket IO</title> 
 
    <link href="/css/bootstrap.css" rel="stylesheet"> 
 
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /> 
 

 
</head> 
 

 
<body> 
 

 
    <div class="container"> 
 
    <div class="row"> 
 
     <div class="" align="center" id="nickWrap"> 
 
     <img height="500" width="500" class="img-circle" src="/images/minion.jpg" /> 
 
     <h3>Pick your super awesome nickname</h3> 
 
     <p id="nickError"></p> 
 
     <div class="form-group"> 
 
      <form id="setNick" role="form"> 
 
      <input type="text" autofocus required placeholder="Your nickname" id="nickname" /> 
 
      <input class="btn btn-primary" type="submit" value="Submit" /> 
 
      </form> 
 
     </div> 
 
     </div> 
 
    </div> 
 
    </div> 
 

 

 

 
    <div class="container"> 
 
    <div class="row"> 
 
     <div class="col-md-6 col-sm-offset-1 panel panel-primary"> 
 
     <div class="panel-body" style="min-height: 400;max-height: 400;overflow-y: scroll;"> 
 
      <div id="contentWrap"> 
 
      <div id="chatWrap"> 
 
       <div id="chat"></div> 
 
      </div> 
 
      </div> 
 
     </div> 
 
     </div> 
 
     <br/> 
 
     <div class="col-md-4 col-sm-offset-1 panel panel-default"> 
 
     <div class="panel-heading">Chat</div> 
 
     <div class="panel-body"> 
 
      <div align="left" id="users"></div> 
 
     </div> 
 
     </div> 
 

 

 
    </div> 
 
    </div> 
 

 

 

 

 

 
    <br/> 
 
    <div class="row"> 
 

 
    <div class="col-md-3 col-md-offset-2"> 
 
     <form id="message-box"> 
 
     <div class="form-group"> 
 
      <textarea rows="3" cols="60" id="message" placeholder="Write your message and press enter.."></textarea> 
 
     </div> 
 
     </form> 
 
    </div> 
 

 
    </div> 
 

 

 

 
    <script src="https://code.jquery.com/jquery-1.12.0.min.js"></script> 
 
    <script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/1.4.4/socket.io.js"></script> 
 
    <script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.0.0-alpha/css/bootstrap.css"></script> 
 

 
    <script> 
 
    </script> 
 

 
</body> 
 

 
</html>

我试图隐藏与ID contentWrap股利,但显示:即使我没有用过的风格是不工作很重要,以确保它覆盖所有!其他冲突风格。不知道我做错了

+0

你是什么意思是不是工作? – brso05

+0

页面加载时隐藏吗?那么当你提交它显示div? – brso05

+0

这里隐藏得很好 – adeneo

回答

0

您可能有触发

$('#message').keydown(function(event) { 
    if (event.keyCode == 13) { 
     $(this.form).submit() 
     return false; 
    } 

的东西时,你的页面加载,然后应用$('#contentWrap').show();

0

明白了,我没有想显示空两div加载页面时。

<div class="container"> 
     <div class="row"> 
      <div class="col-md-6 col-sm-offset-1 panel panel-primary"> 
      <div class="panel-body" style="min-height: 400;max-height: 400;overflow-y: scroll;"> 
       <div id="contentWrap"> 
        <div id="chatWrap"> 
         <div id="chat"></div>    
        </div> 
       </div> 
      </div> 
     </div> 
    <br/> 
     <div class="col-md-4 col-sm-offset-1 panel panel-default"> 
     <div class="panel-heading">Chat</div> 
     <div class="panel-body"> 
      <div align="left" id="users"></div> 
     </div> 
     </div> 


    </div> 
</div> 

<div class="row"> 

    <div class="col-md-3 col-md-offset-2"> 
    <form id="message-box"> 
     <div class="form-group"> 
     <textarea rows="3" cols="60" id="message" placeholder="Write your message and press enter.."></textarea> 
     </div> 
    </form> 
</div> 

</div> 

所以我刚刚结束的两个div到彼此的div

<div id="chatWindow"> 

<div class="container"> 
     <div class="row"> 
      <div class="col-md-6 col-sm-offset-1 panel panel-primary"> 
      <div class="panel-body" style="min-height: 400;max-height: 400;overflow-y: scroll;"> 
       <div id="contentWrap"> 
        <div id="chatWrap"> 
         <div id="chat"></div>    
        </div> 
       </div> 
      </div> 
     </div> 
    <br/> 
     <div class="col-md-4 col-sm-offset-1 panel panel-default"> 
     <div class="panel-heading">Chat</div> 
     <div class="panel-body"> 
      <div align="left" id="users"></div> 
     </div> 
     </div> 


    </div> 
</div> 





<br/> 
<div class="row"> 

    <div class="col-md-3 col-md-offset-2"> 
    <form id="message-box"> 
     <div class="form-group"> 
     <textarea rows="3" cols="60" id="message" placeholder="Write your message and press enter.."></textarea> 
     </div> 
    </form> 
</div> 

</div> 

    </div> 

后来检查的一些情况我改变chatWindow与

$('#chatWindow').show(); 
知名度后