Advertisement
gsmashik

chat system html

Jun 26th, 2018
129
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
HTML 10.86 KB | None | 0 0
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4.     <meta charset="UTF-8">
  5.     <title>Document</title>
  6.  
  7. <link href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.0/css/bootstrap.min.css" rel="stylesheet" id="bootstrap-css">
  8. <script src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
  9.  
  10. <script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.0/js/bootstrap.min.js"></script>
  11.  
  12. <style>
  13.  
  14. /*body{
  15.     height:400px;
  16.     position: fixed;
  17.     bottom: 0;
  18. }*/
  19. .col-md-2, .col-md-10{
  20.     padding:0;
  21. }
  22. .panel{
  23.     margin-bottom: 0px;
  24. }
  25. .chat-window{
  26.     bottom:0;
  27.     position:fixed;
  28.     float:right;
  29.     margin-left:10px;
  30. }
  31. .chat-window > div > .panel{
  32.     border-radius: 5px 5px 0 0;
  33. }
  34. .icon_minim{
  35.     padding:2px 10px;
  36. }
  37. .msg_container_base{
  38.   background: #e5e5e5;
  39.   margin: 0;
  40.   padding: 0 10px 10px;
  41.   max-height:300px;
  42.   overflow-x:hidden;
  43. }
  44. .top-bar {
  45.   background: #666;
  46.   color: white;
  47.   padding: 10px;
  48.   position: relative;
  49.   overflow: hidden;
  50. }
  51. .msg_receive{
  52.     padding-left:0;
  53.     margin-left:0;
  54. }
  55. .msg_sent{
  56.     padding-bottom:20px !important;
  57.     margin-right:0;
  58. }
  59. .messages {
  60.   background: white;
  61.   padding: 10px;
  62.   border-radius: 2px;
  63.   box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  64.   max-width:100%;
  65. }
  66. .messages > p {
  67.     font-size: 13px;
  68.     margin: 0 0 0.2rem 0;
  69.   }
  70. .messages > time {
  71.     font-size: 11px;
  72.     color: #ccc;
  73. }
  74. .msg_container {
  75.     padding: 10px;
  76.     overflow: hidden;
  77.     display: flex;
  78. }
  79. img {
  80.     display: block;
  81.     width: 100%;
  82. }
  83. .avatar {
  84.     position: relative;
  85. }
  86. .base_receive > .avatar:after {
  87.     content: "";
  88.     position: absolute;
  89.     top: 0;
  90.     right: 0;
  91.     width: 0;
  92.     height: 0;
  93.     border: 5px solid #FFF;
  94.     border-left-color: rgba(0, 0, 0, 0);
  95.     border-bottom-color: rgba(0, 0, 0, 0);
  96. }
  97.  
  98. .base_sent {
  99.   justify-content: flex-end;
  100.   align-items: flex-end;
  101. }
  102. .base_sent > .avatar:after {
  103.     content: "";
  104.     position: absolute;
  105.     bottom: 0;
  106.     left: 0;
  107.     width: 0;
  108.     height: 0;
  109.     border: 5px solid white;
  110.     border-right-color: transparent;
  111.     border-top-color: transparent;
  112.     box-shadow: 1px 1px 2px rgba(black, 0.2); // not quite perfect but close
  113. }
  114.  
  115. .msg_sent > time{
  116.     float: right;
  117. }
  118.  
  119.  
  120.  
  121. .msg_container_base::-webkit-scrollbar-track
  122. {
  123.     -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
  124.     background-color: #F5F5F5;
  125. }
  126.  
  127. .msg_container_base::-webkit-scrollbar
  128. {
  129.     width: 12px;
  130.     background-color: #F5F5F5;
  131. }
  132.  
  133. .msg_container_base::-webkit-scrollbar-thumb
  134. {
  135.     -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,.3);
  136.     background-color: #555;
  137. }
  138.  
  139. .btn-group.dropup{
  140.     position:fixed;
  141.     left:0px;
  142.     bottom:0;
  143. }
  144.  
  145.  
  146.  
  147. </style>
  148. </head>
  149. <body>
  150. <div class="container">
  151.     <div class="row chat-window col-xs-5 col-md-3" id="chat_window_1" style="margin-left:10px;">
  152.         <div class="col-xs-12 col-md-12">
  153.             <div class="panel panel-default">
  154.                 <div class="panel-heading top-bar">
  155.                     <div class="col-md-8 col-xs-8">
  156.                         <h3 class="panel-title"><span class="glyphicon glyphicon-comment"></span> Chat - Miguel</h3>
  157.                     </div>
  158.                     <div class="col-md-4 col-xs-4" style="text-align: right;">
  159.                         <a href="#"><span id="minim_chat_window" class="glyphicon glyphicon-minus icon_minim"></span></a>
  160.                         <a href="#"><span class="glyphicon glyphicon-remove icon_close" data-id="chat_window_1"></span></a>
  161.                     </div>
  162.                 </div>
  163.                 <div class="panel-body msg_container_base">
  164.                     <div class="row msg_container base_sent">
  165.                         <div class="col-md-10 col-xs-10">
  166.                             <div class="messages msg_sent">
  167.                                 <p>that mongodb thing looks good, huh?
  168.                                 tiny master db, and huge document store</p>
  169.                                 <time datetime="2009-11-13T20:00">Timothy • 51 min</time>
  170.                             </div>
  171.                         </div>
  172.                         <div class="col-md-2 col-xs-2 avatar">
  173.                             <img src="http://www.bitrebels.com/wp-content/uploads/2011/02/Original-Facebook-Geek-Profile-Avatar-1.jpg" class=" img-responsive ">
  174.                         </div>
  175.                     </div>
  176.                     <div class="row msg_container base_receive">
  177.                         <div class="col-md-2 col-xs-2 avatar">
  178.                             <img src="http://www.bitrebels.com/wp-content/uploads/2011/02/Original-Facebook-Geek-Profile-Avatar-1.jpg" class=" img-responsive ">
  179.                         </div>
  180.                         <div class="col-md-10 col-xs-10">
  181.                             <div class="messages msg_receive">
  182.                                 <p>that mongodb thing looks good, huh?
  183.                                 tiny master db, and huge document store</p>
  184.                                 <time datetime="2009-11-13T20:00">Timothy • 51 min</time>
  185.                             </div>
  186.                         </div>
  187.                     </div>
  188.                     <div class="row msg_container base_receive">
  189.                         <div class="col-md-2 col-xs-2 avatar">
  190.                             <img src="http://www.bitrebels.com/wp-content/uploads/2011/02/Original-Facebook-Geek-Profile-Avatar-1.jpg" class=" img-responsive ">
  191.                         </div>
  192.                         <div class="col-xs-10 col-md-10">
  193.                             <div class="messages msg_receive">
  194.                                 <p>that mongodb thing looks good, huh?
  195.                                 tiny master db, and huge document store</p>
  196.                                 <time datetime="2009-11-13T20:00">Timothy • 51 min</time>
  197.                             </div>
  198.                         </div>
  199.                     </div>
  200.                     <div class="row msg_container base_sent">
  201.                         <div class="col-xs-10 col-md-10">
  202.                             <div class="messages msg_sent">
  203.                                 <p>that mongodb thing looks good, huh?
  204.                                 tiny master db, and huge document store</p>
  205.                                 <time datetime="2009-11-13T20:00">Timothy • 51 min</time>
  206.                             </div>
  207.                         </div>
  208.                         <div class="col-md-2 col-xs-2 avatar">
  209.                             <img src="http://www.bitrebels.com/wp-content/uploads/2011/02/Original-Facebook-Geek-Profile-Avatar-1.jpg" class=" img-responsive ">
  210.                         </div>
  211.                     </div>
  212.                     <div class="row msg_container base_receive">
  213.                         <div class="col-md-2 col-xs-2 avatar">
  214.                             <img src="http://www.bitrebels.com/wp-content/uploads/2011/02/Original-Facebook-Geek-Profile-Avatar-1.jpg" class=" img-responsive ">
  215.                         </div>
  216.                         <div class="col-xs-10 col-md-10">
  217.                             <div class="messages msg_receive">
  218.                                 <p>that mongodb thing looks good, huh?
  219.                                 tiny master db, and huge document store</p>
  220.                                 <time datetime="2009-11-13T20:00">Timothy • 51 min</time>
  221.                             </div>
  222.                         </div>
  223.                     </div>
  224.                     <div class="row msg_container base_sent">
  225.                         <div class="col-md-10 col-xs-10 ">
  226.                             <div class="messages msg_sent">
  227.                                 <p>that mongodb thing looks good, huh?
  228.                                 tiny master db, and huge document store</p>
  229.                                 <time datetime="2009-11-13T20:00">Timothy • 51 min</time>
  230.                             </div>
  231.                         </div>
  232.                         <div class="col-md-2 col-xs-2 avatar">
  233.                             <img src="http://www.bitrebels.com/wp-content/uploads/2011/02/Original-Facebook-Geek-Profile-Avatar-1.jpg" class=" img-responsive ">
  234.                         </div>
  235.                     </div>
  236.                 </div>
  237.                 <div class="panel-footer">
  238.                     <div class="input-group">
  239.                         <input id="btn-input" type="text" class="form-control input-sm chat_input" placeholder="Write your message here..." />
  240.                         <span class="input-group-btn">
  241.                         <button class="btn btn-primary btn-sm" id="btn-chat">Send</button>
  242.                         </span>
  243.                     </div>
  244.                 </div>
  245.             </div>
  246.         </div>
  247.     </div>
  248.    
  249.     <div class="btn-group dropup">
  250.         <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">
  251.             <span class="glyphicon glyphicon-cog"></span>
  252.             <span class="sr-only">Toggle Dropdown</span>
  253.         </button>
  254.         <ul class="dropdown-menu" role="menu">
  255.             <li><a href="#" id="new_chat"><span class="glyphicon glyphicon-plus"></span> Novo</a></li>
  256.             <li><a href="#"><span class="glyphicon glyphicon-list"></span> Ver outras</a></li>
  257.             <li><a href="#"><span class="glyphicon glyphicon-remove"></span> Fechar Tudo</a></li>
  258.             <li class="divider"></li>
  259.             <li><a href="#"><span class="glyphicon glyphicon-eye-close"></span> Invisivel</a></li>
  260.         </ul>
  261.     </div>
  262. </div>
  263. <script>
  264.     $(document).on('click', '.panel-heading span.icon_minim', function (e) {
  265.     var $this = $(this);
  266.     if (!$this.hasClass('panel-collapsed')) {
  267.         $this.parents('.panel').find('.panel-body').slideUp();
  268.         $this.addClass('panel-collapsed');
  269.         $this.removeClass('glyphicon-minus').addClass('glyphicon-plus');
  270.     } else {
  271.         $this.parents('.panel').find('.panel-body').slideDown();
  272.         $this.removeClass('panel-collapsed');
  273.         $this.removeClass('glyphicon-plus').addClass('glyphicon-minus');
  274.     }
  275. });
  276. $(document).on('focus', '.panel-footer input.chat_input', function (e) {
  277.     var $this = $(this);
  278.     if ($('#minim_chat_window').hasClass('panel-collapsed')) {
  279.         $this.parents('.panel').find('.panel-body').slideDown();
  280.         $('#minim_chat_window').removeClass('panel-collapsed');
  281.         $('#minim_chat_window').removeClass('glyphicon-plus').addClass('glyphicon-minus');
  282.     }
  283. });
  284. $(document).on('click', '#new_chat', function (e) {
  285.     var size = $( ".chat-window:last-child" ).css("margin-left");
  286.      size_total = parseInt(size) + 400;
  287.     alert(size_total);
  288.     var clone = $( "#chat_window_1" ).clone().appendTo( ".container" );
  289.     clone.css("margin-left", size_total);
  290. });
  291. $(document).on('click', '.icon_close', function (e) {
  292.     //$(this).parent().parent().parent().parent().remove();
  293.     $( "#chat_window_1" ).remove();
  294. });
  295.  
  296. </script>
  297. </body>
  298. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement