Еще мысль пришла, может это отловить на стадии формирования сообщения? Вот по моему код который его создает:
kide.insertNewContent = function (
uid,
name,
text,
url,
ti,
color,
rango,
id,
sesion,
yo,
hora,
img
) {
if (text.replace(/ /g, "") != "") {
let c =
color.length > 0 ?
'style="color:#' + color + '" class="KIDE_msg"' :
'class="KIDE_dc_' + this.rangos[rango] + ' KIDE_msg"';
let div = this.$("KIDE_msgs");
let nodo = document.createElement("div");
let insertO = this.$("KIDE_output");
let s_hora;
let bquote = document.querySelector("#insertmsg");
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 = "";
let tmp = "";
if (img && kide.show_avatar) {
let 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.insertSmile(\'' + //mod
name +
", ')\" oncontextmenu=\"event.preventDefault();document.querySelector(\'.overlayo\').style.display = \'block\';kide.mensaje('" +
name +
"', " +
uid +
", " +
id +
", '" +
url +
"', '" +
ti +
"', '" +
sesion +
"', " +
rango +
", '" +
img +
"')\">" +
name +
"</span>: <span " +
c +
">" +
this.filter_smilies(text) +
"</span>" + "<i class='fa fa-reply qutes' title='Цитировать' aria-hidden='true'></i>" +
"<i class='fa fa-clipboard K_copy' title='Копировать' aria-hidden='true'></i>"; + //mod
"<span class='editors'><i class='fa fa-pencil' title='Редактировать' aria-hidden='true'></i></span>"; //mod
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();
}
};