1

ここではプログラミングと JavaScript の初心者なので、得られるすべての助けに感謝します。Web サイトで CometChat を使用していますが、API の操作に問題があります。APIの問題ではなく、実装方法の問題だと思います。私はこれらのコード行を CometChat Web サイトから引き出し、多かれ少なかれそれらをユーザーのプロファイル ページにカット アンド ペーストしました (私は実際に、このコードをその場で実装できる CMS システムを持っています)。このコードは、ユーザー (ID 番号 160881 のユーザー) のプロファイル ページに表示されます。

<a href="javascript:void(0)" onclick="javascript:jqcc.cometchat.chatWith('160881');"><img src="http://www.wechsupport.com/content/images/chatwithme.png" alt="Click here to chat with me now"></a>

<script type="text/javascript">

function checkstatus(data) {
    if (data.s == 'available') {
        alert('User is online');
    }
}

window.onload = function() {     jqcc.cometchat.getUser('160881','checkstatus')}; </script>

ユーザーのページに移動すると、最初に「ユーザーはオンラインです」というアラートが表示されます。[OK] をクリックすると、アラートが消えます。また、CHATWITHMEという画像が表示されます。それは結構です、それは動作しますが、厄介です。私がやりたいことは、アラートをすべてまとめて取り除き、ユーザーのステータスが利用可能として戻った場合に CHATWITHME 画像/リンクを表示することです (CHECKSTATUS と呼ばれる関数で示されているように)。私は単純に A HREF ピースを取り、ALERT を次のように置き換えることを考えていました。

<script type="text/javascript">

function checkstatus(data) {
    if (data.s == 'available') {
        <a href="javascript:void(0)" onclick="javascript:jqcc.cometchat.chatWith('160881');"><img src="http://www.wechsupport.com/content/images/chatwithme.png" alt="Click here to chat with me now"></a>;
    }
}

window.onload = function() {     jqcc.cometchat.getUser('160881','checkstatus')}; </script>

しかし、これはうまくいきませんでした。アラートは消えましたが (これは良い推測です)、画像/リンクは表示されません。私はコードを扱った経験が非常に限られており、関数内でアンカータグを機能させる方法がわかりません。提供された支援は何でも利用できます。

ありがとう!!!

4

3 に答える 3

0

X秒ごとsetInterval()にメソッドを呼び出すには、Javascript関数を使用する必要があります。jqcc.cometchat.getUserステータスが変化するたびにボタンを表示/非表示にしたい場合は、HTML も少し変更する必要があります。

<div id="chat-button">
    <a href="javascript:void(0)" onclick="javascript:jqcc.cometchat.chatWith('160881');"><img src="http://www.wechsupport.com/content/images/chatwithme.png" alt="Click here to chat with me now"></a>
</div>

そして、checkstatus()関数内で次のようにします。

function checkstatus() {
    if (data.s == 'available') {
        $('#chat-button').show();
    } else {
        $('#chat-button').hide();
    }
}

(私は Javascript コードで jQuery 構文を使用しています)

于 2013-05-06T14:33:46.850 に答える
0

みんな、ありがとう。「オフライン」ボタンを作成してアップロードしました。Walilu (ありがとう) によって提出されたコードをわずかに変更し、これを思いつきました:

<div id="chatonlinebutton"></div>
<div id="chatofflinebutton"></div>

<script type="text/javascript">

function checkstatus(data) {
    if (data.s == 'available') {
        document.getElementById('chatonlinebutton').innerHTML = '<a href="javascript:void(0)" onclick="javascript:jqcc.cometchat.chatWith(160881);"><img src="http://www.wechsupport.com/content/images/chatwithme.png" alt="Click here to chat with me now"></a>';
    }     else {
        document.getElementById('chatofflinebutton').innerHTML = '<img src="http://www.wechsupport.com/content/images/chatoffline.png" alt="User is offline right now">';
    }
}

window.onload = function() {     jqcc.cometchat.getUser('160881','checkstatus')}; </script>

ユーザーがオンラインの場合、オンライン ボタンが表示されます。そうでない場合は、「ユーザーはオフラインです」という簡単なグラフィックが表示されます。

本当にありがとう!!

于 2013-05-07T13:08:45.877 に答える