Не работает скрипт после подгрузки ajax
После того, как опубликовать сообщение, кнопка становится неактивной и на ней отображается таймер, но после того как происходит ajax подгрузка, кнопка становится кликабельной, класс disabled пропадает. Опубликовать всё равно ничего не получается, таймер отображается правильно. Проблема только в том, что на кнопку можно нажать, ну и цвет кнопки соответственно меняется, на disabled она серая. Скрипт:
String.prototype.toHHMMSS = function () { var sec_num = parseInt(this, 10); // don't forget the second param
var hours = Math.floor(sec_num / 3600);
var minutes = Math.floor((sec_num - (hours * 3600)) / 60);
var seconds = sec_num - (hours * 3600) - (minutes * 60);
if (hours
if (minutes
if (seconds
return hours+':'+minutes+':'+seconds;
}
var msg_btn_interval, msg_btn_text;
function msg_display_time(msg_time) {
jQuery('.message-btn.button-active a').addClass('disabled');
msg_btn_interval = window.setInterval(function(){
msg_time = msg_time - 1;
var time = '' + msg_time;
jQuery('.message-btn.button-active a').text(time.toHHMMSS());
if(msg_time
window.clearInterval(msg_btn_interval);
jQuery('.message-btn.button-active a').text(msg_btn_text).removeClass('disabled');
}
}, 1000);
}
jQuery(document).ready(function(){
msg_btn_text = jQuery('.message-btn.button-active a').text();
if($_msg_time_d > 0){
msg_display_time($_msg_time_d);
}
}); {$lng->post}
Пробовал вот так, и всё получилось, вот только теперь таймер скачет. Должно быть так 0:45-0:44:-0:43-0:42 и так далее, а получается вот так 0:45-0:58:-0:43-0:51.... Скорее всего, я что-то делаю неправильно с loaded().
function loaded() {
function msg_display_time(msg_time) {
jQuery('.message-btn.button-active a').addClass('disabled');
msg_btn_interval = window.setInterval(function(){
msg_time = msg_time - 1;
var time = '' + msg_time;
jQuery('.message-btn.button-active a').text(time.toHHMMSS());
if(msg_time
window.clearInterval(msg_btn_interval);
jQuery('.message-btn.button-active a').text(msg_btn_text).removeClass('disabled');
}
}, 1000);
}
jQuery(document).ready(function(){
msg_btn_text = jQuery('.message-btn.button-active a').text();
if($_msg_time_d > 0){
msg_display_time($_msg_time_d);
}
});
}
{$lng->post}