1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128
| function createMap(){ // Création du cadre dropper // Appelée au clic sur un bouton
var newSection=document.createElement('section');
newSection.id='dropper'+this.name;
newSection.className='dropper';
var section=document.getElementById('corpsOngletStations').appendChild(newSection);
}
//Drag And Drop
unction applyDragAndDropEvents(element, dropper){
element.draggable({
containment : '.dropper',
helper : 'original',
stack : '.draggable',
cursor : 'move',
cursorAt : {
left : 0,
top : 0,
right : 50,
bottom : 0
},
drag : function(event, ui){
$(this).css('opacity', '0.7')
/* alert('ok');
alert(ui.helper.hasClass('draggable')); */
}
});
dropper.droppable({
//Cadre surligné
activate : function(event, ui){
$(this).css('border', '2px solid rgb(253, 255, 71)');
},
drop : function(event, ui){
clonedDiv=null;
ui.draggable.css('opacity', '1');
/* applyDragAndDropEvents(ui.draggable, dropper); */
//Cadre désurligné
$(this).css('border', '0px solid transparent');
},
});
}
function applyFirstDragAndDropEvents(element, dropper){
element.draggable({
/* containment : 'document', */
helper : 'clone',
stack : '.firstDraggable',
/* zIndex : 1000, */
revert : 'invalid',
cursor : 'move',
cursorAt : {
left : 0,
top : 0,
right : 55,
bottom : 190
},
scroll : false,
start : function(event, ui){
ui.helper.appendTo('#corpsOngletStations');
/* alert('first'); */
/* alert(ui.helper.offset().left);
alert(event.pageX); */
},
drag : function(event, ui){
ui.helper.css('opacity', '0.7');
}
});
dropper.droppable({
/* accept : helper, */
//Cadre surligné
activate : function(event, ui){
$(this).css('border', '2px solid rgb(253, 255, 71)');
},
drop : function(event, ui){
//Clonage du helper, position, pointeur (pr plus de précision) ?, rendre le clone draggable
var clonedDiv=ui.helper.clone();
clonedDiv.css({'opacity' : '1', 'cursor' : 'pointer'})
.removeClass('firstDraggable ui-draggable ui-draggable-dragging')
.addClass('draggable');
/* applyDragAndDropEvents(clonedDiv, dropper); */
var x=clonedDiv.offset().left;
var y=clonedDiv.offset().top;
clonedDiv.css('position', 'absolue')
.offset({
left : -320,
top : -170
});
var nomStationDroppee=clonedDiv.text();
$(this).append(clonedDiv);
//Cadre désurligné
$(this).css('border', '0px solid transparent');});
}
//Duplication appelée au clic sur un bouton
function duplicateDeployment(){
duplication=true;
//Cache de la carte station de l'ancien Dep sélectionné -->se fait createDeployment
createDeployment();
var deploymentOrigin=deploymentList[(cellCliqueeDT.parentNode.rowIndex)-4]; //A cause des lignes d'exemple en Html déjà écrites, sans ce serait -1
var deploymentCopy=deploymentList[deploymentList.length-1];
deploymentOrigin.cloneDeployment(deploymentCopy);
deploymentOriginName=deploymentOrigin.name;
/* deploymentOrigin.resetStations(); */
var carteStations=document.getElementById('dropper'+deploymentOriginName);
//Mise à jour currentDeployment
currentDeployment=deploymentList[deploymentList.length-1];
currentDeployment.name=deploymentOriginName+'-copy';
//Récupération de la carte Stations
var nouvSection=carteStations.cloneNode(true);
nouvSection.id='dropper'+currentDeployment.name;
nouvSection.className='dropper';
sectionMapStations=document.getElementById('corpsOngletStations').appendChild(nouvSection);
var divs=$('#dropper'+currentDeployment.name+' div');
/* applyDragAndDropEvents(divs,elementDropper); */
$(function(){
corpsOngletStations.addEventListener('mouseover', function (e){
elementDropper=$('#dropper'+currentDeployment.name);
elementsDraggable=$('.draggable');
elementsFirstDraggable.mousedown(function (e){
applyFirstDragAndDropEvents(elementsFirstDraggable,elementDropper);
});
elementsDraggable.mousedown(function (e){
applyDragAndDropEvents(elementsDraggable,elementDropper);
});
},true);
}); |
Partager