Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: z-indeksoitujen layereiden liikuttelu hiirellä?

slitzu [28.12.2006 14:04:05]

#

Onko kellään hajua, miten tollasen sais toteutettua näppärästi? Ilmeisesti javascriptillä joutuis tekee, mutta voiko joku jeesata vähän alkuun? Tiedän, että popup-ikkunat ajais saman asian, mutta eikö ne oo vähän niinkuin jo poissa muodista? ;p

Merri [28.12.2006 14:20:04]

#

Helpoin tapa noin toimivuuden kannalta olisi vaihdella elementtien järjestystä. Sivulla myöhemmin olevat elementit tulevat päälle kun aiemmat elementit jäävät alapuolelle. Lisäksi position : absolute; ja position : fixed; -elementit sijoitetaan päällemmäksi kuin static- ja relative-elementit.

CSS:n z-index -arvo on selaintuen takia hieman ongelmallinen, yllättävän helpostikin saa tilanteen jossa se ei vain toimi kaikilla selaimilla oletetulla tavalla tai sillä ei ole jopa ollenkaan vaikutusta.

Olga [29.12.2006 10:56:37]

#

Aika yksinkertainen juttuhan tuo on itsekin toteuttaa, mutta suosittelisin silti jotain valmista pikku kilkettä, kuten Scriptaculouksen Draggable-luokkaa.

slitzu [02.01.2007 15:55:48]

#

Okei, löytyi yksinkertaisempikin skripti, mutta jostain syystä event.clientX ei toimi Firefoxissa. IE:llä pelittää mainiosti.

Tarkoittamani esimerkki löytyy täältä: http://msconline.maconstate.edu/tutorials/JSDHTML/JSDHTML15/jsdhtml15-03.htm

Olga [02.01.2007 18:45:34]

#

Prototypen lähdekoodista:

  pointerX: function(event) {
    return event.pageX || (event.clientX +
      (document.documentElement.scrollLeft || document.body.scrollLeft));
  },

  pointerY: function(event) {
    return event.pageY || (event.clientY +
      (document.documentElement.scrollTop || document.body.scrollTop));
  }

Mutta kaikkein yksinkertaisinta on siis käyttää vaikkapa tuota Draggable-luokkaa.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta