Ich habe eine Funktion zum Verfolgen von Mausereignissen auf document
, obwohl ich nur die Maus speziell für die Neugröße Erkennung Zweck at- dest an dieser Stelle ...Holen Sie sich unter Maus - aktuelle DOM-Element obj [während Ereignis-Größe ändern] jQuery-Ui
var BoolMouseDown = false;
var BoolResizing = false;
document.body.onmousedown = function() {
BoolMouseDown = true;
};
document.body.onmouseup = function() {
BoolMouseDown = false;
};
auf dem ui
Nebenbei bemerkt: Ziel ist es, Daten von jedem Elemente unter Maus zu bekommen, damit sie in einen neuen (div) Teil verwandeln konnten, die den Sieger überlebt
// called function on resiz event
var ValueCurSourceCellId = "";
var ValueCurDestCellId = "";
function CurCellIdSet(val) {
if (BoolMouseDown) {
ValueCurDestCellId = val;
BoolMouseDown = false;
}
else {
if (BoolResizing) {
ValueCurDestCellId = val;
}
ValueCurSourceCellId = val;
}
}
var BoolHasCollided = false;
$(gitem11)
.mouseover(function() {
//cur mouse over = attribute of html-imput-hidden(curMoRszr="")
if (BoolMouseDown) return;//so if its Mouse Down - don't collect underlying element data
$elmHidData1.attr('curMoRszr', $(this).attr('id'));
CurCellIdSet($(this).attr('id'));
})
.mousedown(function() {
BoolMouseDown = true;
$elmHidData1.attr('curMoRszr', $(this).attr('id'));
CurCellIdSet($(this).attr('id'));
})
.mouseup(function() {
BoolMouseDown = false;
CurCellIdSet($(this).attr('id'));
})
.resizable({
handles: "e, s", ghost: true,
start:
// here 11 is the accident producer, 21 is the victim.
function() {
console.log("resize started");
curg21initialpositionTop = $curg21.offset().top;
curg11initialpositionTop = $curg11.offset().top;
curg11initialHeight = $curg11.css("height").substring(0, 2);
},
resize:
function (event, ui) {
var data1id = $elmHidData1.attr('curMoRszr');
if (ui.size.height + curg11initialpositionTop > curg21initialpositionTop && ui.size.height + curg11initialpositionTop < curg21initialpositionTop + 50 + gap)
{
setRszble($curg11, $curg21);
BoolHasCollided = true;
}
$(gitem31).text("p: " + ui.size.height + "curg21initialuiposition:" + curg21initialuiposition + ", " + ui.position.top);
},
stop:
// function to conclude the accident, give the new partial div a position and size
});
während hier auf SO zu fragen, der nächste Beitrag ich gefunden habe ist This^
was ist der richtige Weg, um die Daten auf Resize-Ereignis zu sammeln?
Ich würde das 'resize' Ereignis verwenden: resize: function (e, ui) {var x = e.clientX; var y = e.clientY; } ' – Twisty
@Twisty Danke für Ihren Vorschlag, ich werde es versuchen .. – LoneXcoder