[JS/HTML] Iframe in draggable layer

Pagina: 1
Acties:

  • Blue-eagle
  • Registratie: September 2000
  • Niet online
Ik heb nu een scriptje gebouwd die een layer kan laten meebewegen met je muis (ook wel: slepen).
In die layer (<div>) heb ik een iframe gebouwd die tekst en andere zooi bevat. Op zich heel leuk, totdat je het laagje bij zijn top pakt, en naar beneden sleept. Je muis schokt over de iframe heen en... je layer is 'sticky'... hij blijft aan je muis plakken.

Hoe kun je dit oplossen, behalve door dat layer scroll scriptje rippen van Clay?

Verwijderd

Vaag, ik heb het zelf nooit met iframes geprobeerd maar het zou kunnen dat ie daar meer moeite mee heeft dan met 'simpele' elementen als tabellen en plaatjes enzo.

Heb je geprobeerd om de iframe eruit te halen en te vervangen met plain html? Doet ie het dan nog?

Kun je een voorbeeld online zetten?

  • RM-rf
  • Registratie: September 2000
  • Laatst online: 16:20

RM-rf

1 2 3 4 5 7 6 8 9

het lijkt me dat dat ligt aan het event-model -> zodra de mouse over de iframe gaat wordt de mouseUp gecaptured door de pagina in de iframe, en niet door de pagina zelf (kennelijk blijft de mousemove wel gecaptured worden door de top-pagina zelf :? )

je kunt in de iframe zelf een onmouseup-event zetten dat dat event doorgeeft aan de topwindow (test even of het 'sticky-worden' enkel optreedt als de mouseup binnen de iframe optreedt en niet als je de mouse weer terughaalt)

Intelligente mensen zoeken in tijden van crisis naar oplossingen, Idioten zoeken dan schuldigen


  • Blue-eagle
  • Registratie: September 2000
  • Niet online
Oke, ik zal dit thuis even proberen, maar inmiddels staat een voorbeeld op www.blue-eagle.nl/new/

Let niet op het ontwerp, er komt nog erg veel bij.

Verwijderd

code:
1
2
3
document.onmousemove=dragf;
document.onmousedown=dragf;
document.onmouseup=dragf;

ziet het probleem niet hier? Moet je onmouseup niet een funztie hebben die zorgt dat de boel los gelaten wordt?

  • RM-rf
  • Registratie: September 2000
  • Laatst online: 16:20

RM-rf

1 2 3 4 5 7 6 8 9

inderdaad werkt dit zo, bij mij valt hij ook stil als de muis over de iframe gaat

iets als zou misschien kunnen helpen
code:
1
2
3
4
5
6
7
onmousemove="routeEvent(top.window)"
onmouseup="routeEvent(top.window)"

of anders (routeEvent kan best wel netscape-only zijn)

onmousemove="top.window.fireEvent('mousemove')"
onmouseup="top.window.fireEvent('mouseup')"

dit is overigens nogal 'gis'-code, maar hopelijk helpt de terminologie je eventueel ook om verder te zoeken

of anders moet je kijken naar
window.enableExternalCapture()

Intelligente mensen zoeken in tijden van crisis naar oplossingen, Idioten zoeken dan schuldigen


  • Blue-eagle
  • Registratie: September 2000
  • Niet online
Op dinsdag 20 november 2001 11:19 schreef RM-rf het volgende:
inderdaad werkt dit zo, bij mij valt hij ook stil als de muis over de iframe gaat

iets als zou misschien kunnen helpen
code:
1
2
3
4
5
6
7
onmousemove="routeEvent(top.window)"
onmouseup="routeEvent(top.window)"

of anders (routeEvent kan best wel netscape-only zijn)

onmousemove="top.window.fireEvent('mousemove')"
onmouseup="top.window.fireEvent('mouseup')"

dit is overigens nogal 'gis'-code, maar hopelijk helpt de terminologie je eventueel ook om verder te zoeken

of anders moet je kijken naar
window.enableExternalCapture()
Hm, is dat wel javascript? :D ik zie hem niet staan in m`n boek hier op m`n werk.. maar dat kan liggen aan het feit dat dit een oude versie is van de welbekende Bible.

Is het een idee om te proberen een transparant gifje over de hele <div> te plaatsen, en die draggable te maken? Ik weet niet of het iframe zich dan wat aantrekt van dat ding, maar misschien is het nuttig...
Pagina: 1