0
我想優化頁面上的響應時間與「大」的表,這是一個jQuery的droppable,接受〜6 draggables。與其他人一樣,我在製作每個可投入的應用程序時都看到了糟糕的響應時間。我讀過this post和this post,但我似乎無法讓我的代碼正常工作。JQuery droppable和大型表
我的基本問題是我不知道如何獲取可拖動元素的引用。看來我能訪問的唯一元素是實際的可拖動元素。
下面是我定義我的jQuery代碼:
$("#grid table").droppable({
//disabled: 'true',
//activate: function (event, ui) {
// console.log("Activated table")
//},
//over: function (event, ui) {
// console.log("Dragged over")
//},
//activeClass: "ui-state-default",
//hoverClass: "ui-state-hover",
accept: ":not(.ui-sortable-helper)",
tolerance: 'pointer',
drop: function(event, ui) {
console.log("draggable DROPPED!!!");
//$(this).animate({ backgroundColor: ui.draggable.attr("colorValue") }, 250);
var cell = document.elementFromPoint(event.pageX - $(window).scrollLeft(), event.pageY - $(window).scrollTop());
console.log('Dropped cell is'+cell);
console.log(ui.position)
console.log(ui.offset)
console.log(document.elementFromPoint(ui.position.left, ui.position.top))
$(cell).animate({ backgroundColor: ui.draggable.attr("colorValue") }, 250);
console.log('Setting background to:'+ui.draggable.attr("colorValue"));
}
你可以提供任何幫助深表感謝。
正確的,但在這種情況下,由於可放開設置在
從快速查看我看到兩種方法 - 設置每個td爲可投放或計算td位置 – krasu 2012-01-28 15:27:20
將每個td設置爲可投放是一個巨大的性能瓶頸。我試圖通過使用document.elementFromPoint來計算我上面的代碼中的td位置,但這是返回可拖動的img標記而不是td。你會如何推薦定位td? – JJensL 2012-01-28 15:51:34
相關問題