我构建了一个网格,然后使用以下“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天 - 星期日到星期六)和时间(这可能更复杂。我想使用if..else语句会更简单(如果cellColumn = 1则Day =星期天等...)
建议?
答案 0 :(得分:0)
怎么样:
var days = ['Sat', 'Sun', 'Mon', 'Tues', 'Wed', 'Thu', 'Fri'];
var selected = days[offset-1];
答案 1 :(得分:0)
想出来,添加以下内容以计算小时数:分钟(军事时间)
var totalMinutes = cellRow * 60;
var hours = Math.floor(totalMinutes / 60);
var minutes = totalMinutes % 60;
$("#displayCoordinates").html("Time: "+hours+":"+minutes+" | Day: "+selected+"</ br> );