기본 콘텐츠로 건너뛰기

6월, 2015의 게시물 표시

node.js 채팅 기능추가-엔터키 사용, 전송 후 메시지란 비우기

1 2 3 4 5 6 7 8 9 $( 'input#message' ).keydown( function (key) {             if  (key.keyCode  = =   13  & &  $( '#name' ).val() ! = ''   & &  $( '#message' ).val() ! = '' ){                    socket.emit( 'message' ,{                      name  :$( '#name' ).val(),                     message:$( '#message' ).val(),                     date:  new   Date ().toUTCString()                 });         } }); Colored by Color Scripter cs 키 이벤트를 이용하여 enter키가 입력이 되면 다음과 같이 click이벤트가 발생했을 때 처럼 데이터를 전송 keydown(function(key){ 키가 눌릴때 눌린 키의 값을 key로 받게된다 엔터는 13이다..... 그래서 엔터과 눌리고 닉네임과 메시지가 내용이 있을때 작동을 하도록 하였다. 초기에 값을 엔터치는 영역을 input#message로 한 이유는 input으로 해버리면 초기에 닉네임을 입력하는 부분에서 엔터를 치면 채팅은 보이지 않지만 채팅을 하력 하기때문에 아무런 일이 일어나지 않게 된다. 전에 그 input란에 문자가 있으면 그 문자가 계속 날아가기 때문에 메시지가 입력되는 input을 선택해서 그 부분만 작동되게 해준다. 1 2 3 4 $( 'input#m

node.js 채팅 서버와 클라이언트 구현(~ing)

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 var  http  =  require( 'http' );  // module 추출 var  fs  =  require( 'fs' ); var  socketio  =  require( 'socket.io' ); var  mysql  =  require( 'mysql' );   var  client  =  mysql.createConnection({     user:  'root' ,     password:  '********' ,  // 실제로는 비밀번호를 입력을 해야 접속을 합니다....     database:  'company' });   var  server  =  http.createServer( function  (request, response) {     fs.readFile( 'chat.html' ,  function  (error, data) {         response.writeHead( 200 , {  'Content-Type' :  'text/html'  });         response.end(data);     }); }).listen( 80 ,  function  () {     console.log( 'Server Running.......' ); });   var  io  =  socketio.listen(server);   io.sockets.on( 'conne

javascript 상속

상속 기존의 생성자 함수나 객체를 기반으로 새로운 생성자 함수나 객체를 쉽게 만드는것. 기존의 객체를 기반으로 생성하므로 상속을 통해 새로 만들어지는 객체에는 기존 객체의 특성을 모두 가지고 있다. 1 2 3 4 5 6 7 8             //생성자 함수를 선언              function  Square( length ){                 this.width  =   length ;                 this.height  =   length ;             }             Square. prototype .getArea = function (){                  return  this.getWidth() * this.getHeight();             }; Colored by Color Scripter cs 생성자 함수 선언 및 메서드 생성 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32         //생성자 함수를 선언          function  Retangle(w, h) {              //변수를 선언.              var  width  =  w;              var  height  =  h;              //메서드를 선언             this.getWidth  =   function  () {                  return  width;             };             this.getHeight  =   function