Black Friday = Pricewatch Bekijk onze selectie van de beste Black Friday-deals en voorkom een miskoop.

[Scriptaculous] Sortable probleem in Internet Explorer

Pagina: 1
Acties:

  • wjzijderveld
  • Registratie: Augustus 2005
  • Laatst online: 09-11 14:42
edit: Het is opgelost, kleine aanpassing in effects.js was nodig...

Beste,

Voor mijn werk (naam en opdrachtgever achterwege latende), ben ik bezig met een enquêtemanager.
Deze enquêtemanager werkt door middel van Drag&Drop, met de Sortable van Scriptaculous.

Er zijn 2 Sortables gemaakt, één voor de diverse vragen (links), en één voor de enquête zelf (rechts).
Dit werkt nu prima, ik kan vragen slepen naar het rechtervak en de vraag wordt opgebouwd. Maar in Internet Explorer werkt het maar 1 keer. De vraag erin slepen werkt perfect, maar hierna kan ik de vragen niet meer slepen, van beide Sortables niet.

Hier volgende de 2 stukjes code waarmee ik de Sortables aanmaak:
Soort vragen
[code=js]
Sortable.create('draggables',{'containment':['none'],'handle':'newQuestion','tag':'div','revert':true, 'scroll':window,'constraint':false,'dropOnEmpty':false,'scrollSensivity':200});
[/code]
Enquêtemanager vragen
[code=js]
Sortable.create('droparea',{'containment':['droparea','draggables'],'handle': 'newQuestion','tag':'div','scroll':window,'dropOnEmpty':true,'constraint':'vertical','scrollSensivity':200,
'onUpdate':function(ele){
if(tijdelijk.indexOf('#') < 0) {
$('debugarea').update();
add($(tijdelijk),$(tijdelijk).rel);
}
$('draggables').update(buildQuestions());
Sortable.create('draggables',{'containment':['none'],'handle':'newQuestion','tag':'div','revert':true, 'scroll':window,'constraint':false,'dropOnEmpty':false,'scrollSensivity':200});
Vragen = rebuildArray(Vragen);
},
'onChange': function(type) {
tijdelijk = type.id;
var i =0;
$('droparea').childElements().each(function(ele) {
if(ele.id == type.id) {
ele.rel = i;
}
i++;
});
}});
[/code]

De functie buildQuestions() zorgt er alleen voor dat de vraag die zojuist erin is gesleept weer wordt hersteld, zodat alle vragen er nog steeds staan.
De functie rebuildArray() zorgt dat de Array die gebruikt wordt voor de vragen in de goede volgorde staat.
De if met de # erin is om het verschil tussen een nieuw ingesleept vraag aan te geven of dat het een al bestaande vraag te herschikken.
In ele.rel komt de plek te zitten van de vraag die je op dat moment nog beet hebt.

Zowel Firebug, als alle browser consoles die ik verder ken geven niks aan. Op strict geeft Firebug wel veel warnings, maar voor zover ik weet krijg je die altijd met Scriptaculous/Prototype. Voor de zekerheid hier de laatste paar toch bijgezet.

[code=js]reference to undefined property $(e).select("." + options.handle)[0]
(options.handle ? $(e).select('.' + options.handle)[0] : e);
dragdrop.js (regel (717)

reference to undefined property arguments[1].endeffect
if(!arguments[1] || Object.isUndefined(arguments[1].endeffect))
dragdrop.js (regel (256)

reference to undefined property o[eventName]
function(o) { return o[eventName]; }
dragdrop.js (regel (219)[/code]

Aangezien er nog geen informatie kan worden losgelaten kan ik geen link naar de test omgeving geven.

Canon EOS60D | Canon 100mm f/2.8 USM | Canon 100-400mm f/4.5-5-6L | Canon 10-22mm f/3.5-4.5 USM | Canon 430EX II


  • Cartman!
  • Registratie: April 2000
  • Niet online
Begin eerst eens met een los voorbeeld waar je het probleem reproduceert, hoe kun je nou verwachten dat er iemand naar gaat kijken als jij niks kan loslaten...?

  • wjzijderveld
  • Registratie: Augustus 2005
  • Laatst online: 09-11 14:42
Daar was ik inderdaad al bang voor. Ik hoopt meer dat het een algemeen probleem was, ook al kon ik via google geen informatie vinden die daar op wees.

Ik zal eens kijken of ik iets kan lostrekken.

Canon EOS60D | Canon 100mm f/2.8 USM | Canon 100-400mm f/4.5-5-6L | Canon 10-22mm f/3.5-4.5 USM | Canon 430EX II


  • wjzijderveld
  • Registratie: Augustus 2005
  • Laatst online: 09-11 14:42
Bij deze een aparte testomgeving:
http://dev.littledesign.nl/tweakers/

Heb alles zo ver mogelijk gestript, maar nog steeds hetzelfde probleem.
De warnings die ik poste zijn wel verdwenen. Dus daar zal het niet aan liggen neem ik aan.

Canon EOS60D | Canon 100mm f/2.8 USM | Canon 100-400mm f/4.5-5-6L | Canon 10-22mm f/3.5-4.5 USM | Canon 430EX II