Ga naar inhoud

Laten we 't weer eens over layers hebben.... :-(


anoniem

Aanbevolen berichten

Ik heb een soort smoelenboek. Als er met de muis over een foto bewogen wordt moet de naam van die persoon verschijnen. Dat doe ik door een textbox in een layer te gebruiken (simpel onMouseOver/onMouseOut script, gecombineerd met Javascript-functies om de bijbehorende naam te bepalen). Nu het probleem. Een aantal van die foto's staan aan de rechterkant van het scherm. Om te voorkomen dat een deel van de naam buiten het scherm valt wil ik de bijschriften rechts uitlijnen, zodat ze altijd op het scherm passen en daar begint de ellende. De breedte van de textbox is variabel, dat hangt af van de breedte van de naam. De breedte wordt uitgedrukt in het aantal tekens in die textbox. Om 'm rechts uit te lijnen moet ik echter de breedte in pixels hebben. Die trek ik af van de breedte van het scherm en het resultaat is de left-positie van de layer waar de textbox in staat. Ik kan echter niet zomaar punten in pixels omrekenen (behalve misschien bij het gebruik van een niet-proportioneel font, maar dat vind ik niet mooi). Misschien is het gebruik van textboxen in een layer niet de juiste manier, maar hoe moet het dan wel?
Link naar reactie
Ben er niet zeker van. Dan moet je volgens mij een layer maken met een tabel erin, en daarin één cel. Kun je de breedte en uitlijning van een tabelcel uitlezen/instellen in een script? Dan zijn er wel mogelijkheden hoewel het een hoop gereken oplevert. Die tabelcel kan namelijk ook midden in het scherm staan en links uitgelijnd worden. Een andere oplossing zou nog het gebruik van plaatjes zijn. Dan zou ik elk bijschrift in een apart GIF-bestandje moeten zetten. Je kunt gewoon de breedte van het plaatje bepalen en het probleem is opgelost. Vind dat echter niet zo'n mooie oplossing. Nog afgezien van het werk dat je er voor moet doen. Op het moment dat er in het smoelenboek iets veranderd moet worden zijn de foto's al beschikbaar. Ik vind het dan wel zo netjes als je gewoon in de pagina even de naam kan veranderen en dat je dan niet eerst weer een GIF-bestand moet maken. [ Dit Bericht is bewerkt door: Bigfoot op 2002-02-25 11:03 ]
Link naar reactie
Volgens mij doe je veel moeilijker dan noodzakelijk is, maar daarvoor heb ik niet genoeg inzicht in wat je maakt. Maar met helemaal alles gaan lopen berekenen schiet je over het algemeen niet zoveel op, helemaal niet als het ook nog in meerdere browsers moet gaan werken. Ik zou je opzet nog eens heroverwegen.. Maar met document.getElementById('layer').offsetWidth krijg je de breedte in pixels
Link naar reactie

Om een reactie te plaatsen, moet je eerst inloggen

Gast
Reageer op dit topic

×   Geplakt als verrijkte tekst.   Herstel opmaak

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

  • Populaire leden

    Er is nog niemand die deze week reputatie heeft ontvangen.

  • Leden

    Geen leden om te tonen

×
×
  • Nieuwe aanmaken...