Puissance Athlon XP |
Bonjour,
Je suis en train d'implémenter le drag and drop pour une liste dans mon extension.
Mais le problème c'est que je ne peux pas démarrer de session depuis ma liste, et que si j'en démarre une depuis une autre application et que je drop sur ma liste j'ai firefox qui plante (voulez vous arreter le script blablabla)
J'ai aucune erreur dans la console.
Voilà le code que j'utilise:
Code :
Event.observe(listitem, 'draggesture', function(event) { return nsDragAndDrop.startDrag(event, dragdrop); }); Event.observe(listitem, 'dragover', function(event) { return nsDragAndDrop.dragOver(event, dragdrop); }); Event.observe(listitem, 'dragdrop', function(event) { return nsDragAndDrop.drop(event, dragdrop); }); Event.observe(listitem, 'dragexit', function(event) { return nsDragAndDrop.dragExit(event, dragdrop); });
|
Code :
var dragdrop = { onDragStart: function(event, transferData, action){ var name = event.target.childNodes[0].getAtribute('label'); var csv = event.target.childNodes[1].getAttribute('label'); transferData.data = new TransferData(); transferData.data.addDataForFlavour("text/unicode", name + '||' + csv); }, getSupportedFlavours : function() { var flavours = new FlavourSet(); flavours.appendFlavour("text/unicode" ); return flavours; }, onDragOver: function(event, flavour, session) { event.target.setAttribute('style', 'border-top:2px solid #000000;'); }, onDragExit: function(event, session) { event.target.setAttribute('style', null); }, onDrop: function(event, dropdata, session) { $('hfrenhance2-smilies-name').value = dropdata.data; } }
|
|