0

我在准备好的函数中定义了以下内容

    js13(document).ready(function ($) {

            var socket = io.connect('http://xx.xx.xxx.xx:8080');


            socket.on('connect', function(){
                socket.emit('adduser', 'username');
            });


            socket.on('updatechat', function (username, data) {


                data = data.replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/\"/g, "&quot;");
                js13("#chatboxcontent").append('<div class="ui-chatbox-msg"><b>' + username + ':</b> ' + data + '</div>');
                js13("#chatboxcontent").scrollTop(js13("#chatboxcontent")[0].scrollHeight);                 

            });


            socket.on('updateusers', function(data) {
                $('#users').empty();
                $.each(data, function(key, value) {
                    $('#users').append('<div>' + key + '</div>');
                });
            });            



});

如何在就绪函数之外访问相同的套接字变量?我想从外部函数中访问它

4

3 回答 3

2

socket在准备函数之外定义变量..

var socket;

js13(document).ready(function ($) {
   socket = io.connect('http://xx.xx.xxx.xx:8080');

注意: var 声明在 ready 函数中被移除。

于 2013-01-14T18:40:55.597 回答
1

只需在外部创建变量ready ()。请记住在 as 中删除var声明ready(),然后将创建另一个局部变量。

var socket;
js13(document).ready(function ($) {

            socket = io.connect('http://xx.xx.xxx.xx:8080');
...
}
于 2013-01-14T18:41:07.187 回答
1
var socket;

js13(document).ready(function ($) {

    socket = io.connect('http://xx.xx.xxx.xx:8080');
    //...
});
于 2013-01-14T18:41:35.877 回答