В этом случае они передают метки времени Javascript обратно через URL.
Так что на стороне сервера они должны делать что-то вроде этого (псевдокод):
//get parameters from URL, non-rails people would just use POST or GET variables
$from = $_GET['from']
$to = $_GET['to']
//convert to timestamps in your language
$from = $from/1000
$to = $to/1000
//query your data source with these time-based restrictions
//return a JSON data set with the given restrictions, linking the known timestamps to labels
Для вашего второго вопроса попросите серверную часть вернуть ассоциативный массив, связывающий временную метку с объектом данных, который в этом случае содержит Gain, Loss, Url, Title. При успешном обратном вызове вы отображаете их. Вот пример объекта данных:
{ 1274774400000 : {
Gain:0,
Loss:10,
Url:'http://asdf.com',
Title:'We lost some rep here... boohoo'
},
1274947200000 : {
Gain:10,
Loss:0,
Url:'http://asdf.com',
Title:'We gained some rep here... woo!'
}
}
Вы можете видеть объект этого типа, используемый в функции showReputation
на странице, на которую вы ссылались ... за исключением того, что они возвращали массив JSON вместо объекта.
Другая функция, которую вы можете легко добавить, учитывая вышеупомянутый объект данных: событие plotclick, которое выделяет данную точку данных при щелчке по ней.