2014-10-28 58 views
1

我試圖在輸入時得到通知。Strophe.js收到通知(撰寫)

<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script> 
<script type="text/javascript" src="/js/strophe.min.js"></script> 

connection.addHandler(onNotificationReceived, null, "message", "chat", null, null); 

function onNotificationReceived(msg) 
{ 

    var composing = $(msg).find('composing'), 
     paused = $(msg).find('paused'), 
     active = $(msg).find('active'), 
     jid = $(msg).attr('from'); 

     if (composing.length > 0) 
     { 
      $('.chat-feedback').css('display', 'block'); 
      alert(1); 
     } 

     if (paused.length > 0) 
     { 
      $('.chat-feedback').css('display', 'none'); 
      alert(2); 
     } 

     if (active.length > 0) 
     { 
      $('.chat-feedback').css('display', 'none'); 
      alert(3); 
     } 

    return true; 
} 

但它不工作:(

請幫幫忙!


PS。 Сomplet Ë腳本http://sitechat.ru/tests/chat1/

+0

你在哪裏建立連接?你似乎錯過了很多東西,你可以展示完整的腳本嗎? – Spokey 2014-10-28 15:51:56

+0

在borwser中調試你的處理程序。或者在處理程序的每一行之後放置console.log()。例如:console.log('composing ='+撰寫); etc. – 2014-10-28 16:11:35

+0

@Spokey缺少什麼?消息被髮送和接收。與受訪者通知打字聊天。但要獲得打字通知不起作用。 – Alex 2014-10-28 16:45:12

回答

1

您需要解析onNotificationReceived(msg)

var msg = $.parseXML(msg); 

響應XML和我認爲你的意思

jid = $(msg).find('message').attr('from'); 
+0

哦,沒有。 通知沒有來,只有消息 – Alex 2014-10-28 20:05:32

+0

@AlexV有什麼錯? – Spokey 2014-10-28 22:07:23

+0

完整腳本http://sitechat.ru/tests/chat1 – Alex 2014-10-30 00:54:00