jQuery socket - '尝试使用不可用或不再可用的对象'

时间:2015-11-11 14:20:47

标签: jquery sockets

我正在努力学习使用套接字。我没有发现任何关于此错误的信息,或者我正在搜索错误的关键字。无论如何,我可以连接到我的套接字,但当我尝试发送消息时,我收到此错误:

  

InvalidStateError:尝试使用不可用或不再可用的对象

$('#send-btn').click(function(){ //use clicks message send button    
        var mymessage = $('#message').val(); //get message text
        var myname = $('#name').val(); //get user name

        if(myname == ""){ //empty name?
            alert("Enter your Name please!");
            return;
        }
        if(mymessage == ""){ //emtpy message?
            alert("Enter Some message Please!");
            return;
        }

        //prepare json data
        var msg = {
        message: mymessage,
        name: myname,
        color : '<?php echo $colours[$user_colour]; ?>'
        };
        //convert and send data to server
        websocket.send('hello');
});

我找不到有关此错误的任何信息,或者我再次执行相同的错误并搜索错误的关键字。无论如何,我希望你们中的一些人能够回答我能做什么,或者指出我正确的方向。

2 个答案:

答案 0 :(得分:1)

您过快地调用websocket.send()函数。

当websocket netstate有效或ESTABLISHED时,你应该调用它。

您可以通过setTimeout(调用websocket.send方法的函数和time)尝试通话。

答案 1 :(得分:0)

这是我的情况,当我的互联网连接中断以解决此错误时,必须在就绪状态正常时将其发送到套接字:

if (socket.readyState == 1) {
    socket.send ('bal bla'); 
}