私は3ページ - mainpage.php
,post.php
、display.php
を作成しました。
mainpageには、div id「chatbox」のメインチャットインターフェイスと、送信ボタン付きのテキストエリアがあります。送信ボタンをクリックすると、jQueryを使用してpost.php
&と入力し、ユーザーのメッセージをデータベースに入力します。これには問題ありません。PHP&jQuery ajaxメソッドを使用して実装されたチャットルームで、どのように私は顔文字/スマイリーを置くことができますか?
次に、jQuery ajaxメソッド(下記参照)を使用してdisplay.php
を呼び出し、返されたコンテンツをチャットボックスdivに配置します。ここでは、コードです:
function loadLog(){
if(counter>1)
delaytime=2500;
counter++;
var oldscrollHeight = $("#chatbox").attr("scrollHeight") - 20;
var id=$("#ID").val();
var _url='display.php?Id='+id;
$.ajax({
url:_url,
cache: false,
success: function(html){
$("#chatbox").html(html); //Insert chat from DB into the #chatbox div
var newscrollHeight = $("#chatbox").attr("scrollHeight") - 20;
if(newscrollHeight > oldscrollHeight){
$("#chatbox").animate({ scrollTop: newscrollHeight }, 'normal');
}
},
});
}
注:これは、これはあまりにも正常に動作2500 milliseconds-
の間隔で呼び出される関数です。
は今、display.php
に、私はチャット内の顔文字を表示するために
echo PIPHP_ReplaceSmileys($chatdisp['Msg'], 'smileys/');
を使用しました。このためのコードはここにある: http://pluginphp.com/plug-in59.php
私の問題:私たちはdisplay.php
ごとに2500ミリ秒を更新しているので、顔文字は、彼らが表示されるたびに点滅します。画像が読み込まれるまでにテキストが速くなるので、これはテキストでは起こりません。これは理想的ではありません。この点滅を防ぐ方法はありますか?
なぜあなたは大丈夫ですか? – Treffynnon
あなたは叫ぶ必要はありません、私たちはすべてかなり聞いています – kufi