Мне действительно нужна помощь с этим! это отлично работает в Firefox, и кроме того, что Google Chrome не делает там идеальное содержание textarea.
То, что делает приведенный ниже код, - это просто когда пользователь видит сообщение, которое он хочет прокомментировать, он просто вводит данные в текстовую область рядом с сообщением и щелчком отправки. После отправки он добавляет комментарий к другим комментариям.
Однако в IE (все версии) он добавляет комментарий в правильном месте, но удаляет некоторые HTML-теги вокруг первого комментария, а затем удаляет все остальные посты ниже поста, который прокомментировал пользователь!
Вот мой код;
function add_comment( token, loader, internal_error, internal_error_fbs ){
$('textarea.n-c-i').focus(function(){
if( $(this).html() == 'write a comment...' ) {
$(this).html('');
}
});
$('textarea.n-c-i').blur(function(){
if( $(this).html() == '' ) {
$(this).html('write a comment...');
}
});
$(".add-comment").bind("click", function() {
try{
var but = $(this);
var rel = $(this).parents(".n-w").attr("rel");
var comment_input_box = $('[rel=box-' + rel + ']');
var comments_div = $('[rel=box-w-' + rel + ']');
var comments_ul = $('[rel=cb-' + rel + ']');
var new_comment = comment_input_box.val();
var comments_div_data = comments_div.html();
var comments_ul_data = comments_ul.html();
var results = $('[rel=' + rel + ']').find('.com-result');
results.html(loader);
comment_input_box.attr("disabled", "disabled");
but.attr("disabled", "disabled");
//alert(comments_ul.length);
$.ajax({
type: 'POST', url: './', data: 'add-comment=true&ref=' + encodeURIComponent(rel) + '&com=' + encodeURIComponent(new_comment) + '&token=' + token + '&aj=true', cache: false, timeout: 7000,
error: function(){ $.fancybox(internal_error, internal_error_fbs); results.html(''); comment_input_box.removeAttr("disabled"); but.removeAttr("disabled"); },
success: function(html){
auth(html);
if( html != '<span class="error-msg">Error, message could not be posted at this time</span>' ) {
if( comments_ul.length == 0 ) {
// if first comment to be made
comments_div.html('<ul class="com-box" rel="cb-' + rel + '">' + html + '</ul>' + comments_div_data);
comments_div.find('li:last').fadeIn();
retrieve_comments( token, loader, internal_error, internal_error_fbs );
add_comment( token, loader );
}else{
// if not, just add another li to the ul list
comments_ul.html(comments_ul_data + html);
comments_ul.find('li:last').fadeIn();
retrieve_comments( token, loader, internal_error, internal_error_fbs );
}
}
results.html('');
comment_input_box.removeAttr("disabled");
but.removeAttr("disabled");
}
});
}catch(err){alert(err);}
return false;
});
}
ЛЮБАЯ ПОМОЩЬ ОЧЕНЬ ЦЕНА!