progress.html 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <title>Chat</title>
  5. </head>
  6. <style>
  7. #myProgress {
  8. width: 100%;
  9. background-color: #ddd;
  10. }
  11. #myBar {
  12. width: 10%;
  13. height: 30px;
  14. background-color: #04AA6D;
  15. text-align: center;
  16. line-height: 30px;
  17. color: white;
  18. }
  19. </style>
  20. <body>
  21. <h1>WebSocket Chat</h1>
  22. <h2>Your ID: <span id="ws-id"></span></h2>
  23. <form action="" onsubmit="sendMessage(event)">
  24. <input type="text" id="messageText" autocomplete="off"/>
  25. <button>Send</button>
  26. </form>
  27. <ul id='messages'>
  28. </ul>
  29. <script>
  30. var client_id = Date.now()
  31. document.querySelector("#ws-id").textContent = client_id;
  32. var ws = new WebSocket(`ws://www.choozmo.com:8888/ws/${client_id}`);
  33. ws.onmessage = function(event) {
  34. var messages = document.getElementById('messages')
  35. var message = document.createElement('li')
  36. var content = document.createTextNode(event.data)
  37. message.appendChild(content)
  38. messages.appendChild(message)
  39. var elem = document.getElementById("myBar");
  40. console.log(event.data)
  41. elem.style.width = event.data + "%";
  42. elem.innerHTML = event.data + "%";
  43. };
  44. function sendMessage(event) {
  45. var input = document.getElementById("messasgeText")
  46. ws.send(input.value)
  47. input.value = ''
  48. event.preventDefault()
  49. }
  50. </script>
  51. <div id="myProgress">
  52. <div id="myBar">10%</div>
  53. </div>
  54. <br>
  55. <button onclick="move()">Click Me</button>
  56. <script>
  57. var i = 0;
  58. function move() {
  59. if (i == 0) {
  60. i = 1;
  61. var elem = document.getElementById("myBar");
  62. var width = 10;
  63. var id = setInterval(frame, 10);
  64. function frame() {
  65. if (width >= 100) {
  66. clearInterval(id);
  67. i = 0;
  68. } else {
  69. width++;
  70. elem.style.width = width + "%";
  71. elem.innerHTML = width + "%";
  72. }
  73. }
  74. }
  75. }
  76. </script>
  77. </body>
  78. </html>