Как использовать jquery для определения времени между действиями на странице (секундомер между нажатиями кнопок) - PullRequest
0 голосов
/ 14 февраля 2012

Моя цель - определить, сколько времени потребуется пользователю для навигации по пачке страниц (скрытые элементы на одной странице), чтобы я мог записывать время, предпочтительно в мм: сс или просто ссс.

Я бы начал с кнопки ввода, которая должна запустить таймер, а затем при нажатии другой кнопки на 1 из скрытых элементов div остановит таймер.

Конечной целью было бы иметь 3 таймера на одной странице, и это должно быть через jquery, или w / e, иначе можно использовать время между нажатием двух разных кнопок.

Я знаю, как это можно сделать в контроллере, но так как мне нужно собрать 3 отдельных раза, и я не могу сделать это за 3 отдельных действия / дБ сохраняет.

Пока что все, что я нашел, это ссылка на то, что вы уже установили на него время, и это действует как обратный отсчет, а не секундомер.

Любая помощь будет высоко ценится.

Ответы [ 2 ]

1 голос
/ 14 февраля 2012

Вам не нужно jQuery для этого. Вы можете получить текущее значение в миллисекундах с начала эпохи так:

var ms = new Date().getTime();

Или если подсчет персонажей - ваша вещь:

var ms = +new Date();

Просто сделайте это дважды и вычтите первое из второго. Единственное место, где может быть задействован jQuery, это зацепление нажатий на кнопки, например ::10000

$("selector_for_button").click(function() {
    // ...your code here...
});
1 голос
/ 14 февраля 2012
$(function () {

    //cache the time when `document.ready` fires and create a variable to track clicks
    var startTime = new Date().getTime(),
        clicks    = [];

    //only bind the `click` event handler to elements with the `my-links` class so we don't track every click on the webpage
    $('.my-links').on('click', function () {

        //push an object onto the tracking array that includes the target of the link and the time when it was clicked
        clicks.push({ time : new Date().getTime(), target : $(this).attr('href') });
    });
});​

Вот демоверсия: http://jsfiddle.net/wwnyY/1/

Затем вы можете выполнить итерацию массива сохраненных кликов или отправить его на серверный скрипт для сохранения для дальнейшего использования.

Вот несколько хороших документов для Date(): https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Date

...