如何通过在socket.io中发出disconnect事件来断开用户连接

时间:2018-05-15 15:11:15

标签: node.js socket.io

以下是我的服务器脚本。我想通过点击发出“disconnect”事件的leave按钮index.html来显示“特定用户已离开聊天”。但这似乎不起作用。我想这意味着无法发出默认事件。 Plz帮助我做到这一点。任何形式的帮助都表示赞赏。

socket.js

var app = require('express')();
var http = require('http').Server(app);
var io = require('socket.io')(http);

app.get('/', function(req, res){
 res.sendFile(__dirname + '/index.html');
});

io.on('connection',function(socket)
{
  //console.log("user connected")
  socket.on('new user', function(data) {
    console.log(data);})
    socket.on('disconnect', function(data) {
        console.log(data);

})

})
http.listen(3000, function(){
  console.log('listening on *:3000');
}) 

的index.html

<!DOCTYPE   html>
<html>
<head>

</head>
<body>
  <style>

  </style>
    <script src="http://code.jquery.com/jquery-latest.min.js"></script>
    <script src="/socket.io/socket.io.js"></script>


<script>
  var socket = io.connect();
 //
 $(function(){

  $('#join').click(function(){
    var name= $('input').val(); 
    socket.emit('new user', name +  ' has just joined the chat');     
  })

  $('#leave').click(function(){
    var name= $('input').val(); 
    socket.emit('disconnect', name +  ' has left the chat');     
  })



 })

</script>


 Choose your username <input type="text">
      <button id="join" type="submit">
      Enter
      </button>
      <button id="leave" type="submit">
          Leave
      </button>

</body>

1 个答案:

答案 0 :(得分:0)

试试这个

m_seq