Закажите услуги фрилансеров для вашего проекта прямо сейчас!

Размещение заказа на фриланс бирже бесплатно.

4 месяца назад
Илья
33 года, Казахстан
4 месяца в сервисе
Был онлайн 4 месяца назад
2 отзыва(-1)
43% заказов с выбором исполнителя
4 месяца назад

После того, как опубликовать сообщение, кнопка становится неактивной и на ней отображается таймер, но после того как происходит 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 < 10) {hours = "0"+hours;}
if (minutes < 10) {minutes = "0"+minutes;}
if (seconds < 10) {seconds = "0"+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 < 0){
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);
}
});
<div type="button" name="action" class="message-btn button-active" value="Post"><a style="width:66px; text-align: center;" onclick="startUpload()">{$lng->post}</a></div>
Пробовал вот так, и всё получилось, вот только теперь таймер скачет. Должно быть так 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 < 0){
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);
}
});
}
<script> 
loaded();
</script>
<div type="button" name="action" class="message-btn button-active" value="Post"><a style="width:80px; text-align: center;" id="alink" onclick="startUpload(this)">{$lng->post}</a></div>

Выбранный исполнитель
Алексей Д.
37 лет, Беларусь
6 месяцев в сервисе
Был онлайн 3 месяца назад
4 месяца назад

$15

1 день

Отзыв заказчика
Заказ был выполнен другим исполнителем, на другом сайте, так как сайт weblancer был недоступен в день выполнения заказа.
Дмитрий Охрименко
30 лет, Украина
8 лет в сервисе
Был онлайн 1 день назад
4 месяца назад
Алексей Д.
37 лет, Беларусь
6 месяцев в сервисе
Был онлайн 3 месяца назад
4 месяца назад
Лев Конопаев
23 года, Беларусь
2 года в сервисе
Был онлайн 1 месяц назад
4 месяца назад

Другие заказы в категории «Веб-программирование»

Здесь заказчик и фрилансеры могут обсуждать заказ до начала его выполнения.
Фрилансеры могут участвовать в обсуждении только после подачи заявки.
Здесь заказчик будет контролировать выполнение заказа и общаться с исполнителем.
Доступ к этому разделу имеют только заказчик и выбранный исполнитель.
Все материалы этого раздела закрыты от поисковых систем.