Преобразование координат верхнего / левого смещения в день / время - PullRequest
1 голос
/ 19 июля 2011

Я построил сетку, а затем использовал следующую функцию «showCoordinates» для расчета позиций в сетке перетаскиваемого элемента.

function showCoordinates(divId)
{
var leftParent= $("#"+divId).parent().offset().left;
var topParent= $("#"+divId).parent().offset().top;
var left= $("#"+divId).offset().left;
var top= $("#"+divId).offset().top;

var leftTableParent =$("#tableId").parent().offset().left;
var topTableParent =$("#tableId").parent().offset().top;
var leftTable =$("#tableId").offset().left;
var topTable =$("#tableId").offset().top;

var cellWidth =160;
var cellHeight =120;
var offsetDifferenceTop =41;
var offsetDifferenceLeft = -84;
var actualLeft =left-offsetDifferenceLeft;
var actualTop =top-offsetDifferenceTop;
var cellRow =actualTop /cellHeight;
var cellColumn =actualLeft / cellWidth; 
var Day = ??
var Time = ??

$("#displayCoordinates").html("cell row: "+cellRow+" | cell column: "+cellColumn+"      |      Time: "+Time+" | Day: "+Day+" <br />");
}

Я хотел бы преобразовать координаты ячейки в день (7 дней - с воскресенья в субботу) и время (это может быть более сложным. Воскресенье и т.д ...)

Предложения

Ответы [ 2 ]

0 голосов
/ 20 июля 2011

разобрался, добавил следующее для подсчета времени в часах: минуты (военное время)

var totalMinutes = cellRow * 60;   
var hours = Math.floor(totalMinutes / 60);
var minutes = totalMinutes % 60;  

$("#displayCoordinates").html("Time: "+hours+":"+minutes+" | Day: "+selected+"</ br> );
0 голосов
/ 19 июля 2011

Как насчет:

var days = ['Sat', 'Sun', 'Mon', 'Tues', 'Wed', 'Thu', 'Fri'];
var selected = days[offset-1];
...