-5
// Private
makeRowsDraggable: function() {
var dragInitiated = false;
var startPageX, startPageY;
var moving;
var me = this;
$(this.el).interactable({
start: function(e) {
if (e.which > 1 || me.disabled)
return true;
moving = $(e.target).closest(".draggable")[0];
if (!moving)
return true;
moving = $(moving).closest("tr")[0];
dragInitiated = false;
startPageX = e.pageX;
startPageY = e.pageY;
return false;
},
move: function(e) {
// If value updates during a drag the row might disappear
if (!moving.parentNode)
return;
var DRAG_TOLERANCE = 4;
// this line shows its event is not defined
if (!dragInitiated && (Math.abs(event.pageX - startPageX) > DRAG_TOLERANCE || Math.abs(event.pageY - startPageY) > DRAG_TOLERANCE))
dragInitiated = true;
if (dragInitiated) {
var $rows = $(me.el).find(".glut-list-item");
var y = e.pageY;
for (var i = 0; i < $rows.length; i++) {
var top = $($rows[i]).offset().top;
var height = $rows[i].offsetHeight;
if (y < top + height/2)
break;
}
var insertBefore = $rows[i];
if (insertBefore) {
if (insertBefore == moving || insertBefore.previousSibling == moving)
return false;
} else if ($rows[i - 1] == moving)
return false;
moving.parentNode.insertBefore(moving, insertBefore);
me.refreshValue({ edit: true, dom: false });
return false;
}
},
stop: function() {
if (dragInitiated)
return false;
}
});
},
錯誤在於未定義事件。事件在Firefox中不起作用
變化'event'到'e' – 2015-02-05 18:02:30
你怎麼能多少代碼這一點,不知道該怎麼 – Huangism 2015-02-05 20:14:57
我相信複製PASE調試這個錯誤是一個好的開始;) – 2015-02-05 20:36:36