Однако вот что выяснил в ходе экспериментов, код PHP отвечает за сообщения отправленные в чат до последнего обновления страницы, сейчас вписал: oncontextmenu и все заработало как надо, но, сообщения поступающие вновь по прежнему открывают меню, и если я правильно понял отвечает за это опять таки JS, вот этот фрагмент:
kide.insertNewContent = function(uid,name,text,url,ti,color,rango,id,sesion,yo,hora,img) {
if (text.replace(/ /g, "") != "") {
var c = color.length>0 ? 'style="color:#'+color+'" class="KIDE_msg"' : 'class="KIDE_dc_'+this.rangos[rango]+' KIDE_msg"';
var div = this.$('KIDE_msgs');
var nodo = document.createElement('div');
var insertO = this.$("KIDE_output");
var s_hora;
nodo.setAttribute('id', 'KIDE_id_'+id);
nodo.setAttribute('class', 'KIDE_msg_top');
if (this.show_hour)
s_hora = '<span title="'+ti+'" class="KIDE_msg_hour">'+hora+'</span> ';
else
s_hora = '';
var tmp = '';
if (img && kide.show_avatar) {
var style = kide.avatar_maxheight ? 'style="max-height:'+kide.avatar_maxheight+'" ' : '';
tmp = '<img '+style+'src="'+img+'" class="KIDE_icono" alt="" /> ';
}
nodo.innerHTML = s_hora+tmp+'<span style="cursor: pointer" class="KIDE_'+this.rangos[rango]+'" onclick="kide.mensaje(\''+name+'\', '+uid+', '+id+', \''+url+'\', \''+ti+'\', \''+sesion+'\', '+rango+', \''+img+'\')">'+name+'</span>: <span '+c+'>'+this.filter_smilies(text)+'</span>';
if (this.order == 'bottom') {
this.insertAfter(nodo, insertO.lastChild);
}
else
insertO.insertBefore(nodo, insertO.firstChild);
if (!yo && this.sound == 1)
this.play_msg_sound();
this.ajustar_scroll();
}
};
Попытался сделать так, заменил это:
onclick="kide.mensaje(\''+name+'\', '+uid+', '+id+', \''+url+'\', \''+ti+'\', \''+sesion+'\', '+rango+', \''+img+'\')">'+name+'</span>: <span '+c+'>'+this.filter_smilies(text)+'</span>';
На это:
onclick=kide.insertSmile(user.name + ', ');
Но видимо напутал с синтаксисом, такая конструкция "ломает" юзерлист и пользователи вообще не отображаются, да и с правым/левым бы лучше сразу правильно сделать.
Рони, в php все верно: oncontextmenu заработал как надо по правому клику, хотя интересно, что в отличии от JS не удаляет штатное, контекстное меню браузера. Впрочем бог с ним php, поскольку очевидно что главное, что бы левый клик - ник, правый - меню работали именно на вновь поступающих сообщениях.