Все функции не работают в кнопке возобновления

0

У меня есть JS файл, который связан с плагином Wordpress. Это плагин Quiz с таймером. Я применил кнопку паузы и возобновления, которые приостанавливают таймер, а также возобновляют таймер. Но есть проблемы с резюме.

Код кнопки возобновления похож на код функции запуска викторины, но разница в том, что функция возобновления занимает время приостановленного таймера. Но после нажатия кнопки возобновления проблемы возникают следующие проблемы:

  1. Кнопка Pause не работает после нажатия кнопки возобновления.
  2. После нажатия возобновления, когда время истекает, страница результатов не отображается так же, как и после нажатия кнопки запуска викторины.
  3. Кнопка Quiz-summary не работает.

Демо-URL здесь

Есть два похожих файла js. Я предоставляю, что легко понять.

JS FILE

Существенный js файл в демо имеет имена переменных. Поэтому я предоставил аналогичный JS файл.

когда вы открываете js файл gists url, следуйте строке №. 99, 1282 и 2013.

Теги:
timer

3 ответа

0

Во-первых, когда вы нажимаете "Ошибка возобновления таймера", появляется ошибка консоли в строке 242, h [с].home является неопределенной причиной для этого является то, что при нажатии функции паузы questionStart присваивается переменной C "undefined"

Используйте инструменты для разработчиков Chrome или firebug, чтобы понять, где все пошло не так.

И когда вы выбираете имена переменных, лучше выбрать имя. Реагировать содержимое переменной, а не просто "abc" для других, и для вас, когда вы забудете логику, будет легче понять.

  • 0
    Хорошо, я пытаюсь удалить некоторые строки.
  • 0
    это плагин js-файлов. Я добавил уже похожий файл JS. Попробуй это
0

Если вы хотите сохранить время выполнения действия паузы, используйте метод jquery data().

Время паузы

C.find("span").data('time',C.find("span").text());

Во время возобновления

//use this value to some variable to resume the time.
var resumeTime = C.find("span").data('time');  

Вышеупомянутый метод data() добавляет ключевой атрибут к элементу C с именем "время".

Обновлено:

var timer = null,
    interval = 1000,
    value = 300; //In seconds, for 5 mins

$("#start").click(function () {
    if (timer !== null) return;
    timer = setInterval(function () {
        value--;
        $("#input").text(Math.floor(value / 60) + ":" + parseInt(value % 60, 10));
    }, interval);
    this.value = "resume";
});

$("#pause").click(function () {
    clearInterval(timer);
    timer = null
});

Рабочий скрипт

  • 0
    проблема все та же.
  • 0
    @SudheerPal Можете ли вы получить атрибут значения ключа времени в вашей функции возобновления?
0

Ошибка возникает из-за этой строки: C.find("span").val()=C.find("span").textContent(); измените его с помощью кода ниже

C.find("span").val(C.find("span").textContent());
  • 0
    textContent() недоступен для объектов jquery. Я думаю, что вы имеете в виду text() . и даже val() используется для текстовых полей и, следовательно, код jquery должен быть C.find("span").text(C.find("span").text()); но я не понял, что пытается сделать OP, снова добавив текст к тому же элементу ...: /
  • 0
    Хорошо. подожди, я тоже попробую это.
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню