Avatar billede Slettet bruger
16. marts 2007 - 11:37 Der er 9 kommentarer og
1 løsning

Autoscrolling af en div

Hejsa

Jeg har et problem med en div indeholdende en række checkboxe med priser på et produkt. Den ser således ud:

<div id="product_prices">
    <div class="price_option">
        <input type="radio" class="no_border" name="pris" value="261092" id="price_261092" />
        <label for="price_261092">Kr  250,00</label>
    </div>
    <div class="price_option">
        <input type="radio" class="no_border" name="pris" value="261093" id="price_261093" />
        <label for="price_261093">Kr  300,00</label>
    </div>
    <div class="price_option">
        <input type="radio" class="no_border" name="pris" value="261094" id="price_261094" />
        <label for="price_261094">Kr  350,00</label>
    </div>
    <div class="price_option">
        <input type="radio" class="no_border" name="pris" value="261095" id="price_261095" checked="checked" />
        <label for="price_261095">Kr  400,00</label>
    </div>
    <div class="price_option">
        <input type="radio" class="no_border" name="pris" value="261096" id="price_261096" />
        <label for="price_261096">Kr  450,00</label>
    </div>
    <div class="price_option">
        <input type="radio" class="no_border" name="pris" value="261097" id="price_261097" />
        <label for="price_261097">Kr  500,00</label>
    </div>
    <div class="price_option">
        <input type="radio" class="no_border" name="pris" value="261098" id="price_261098" />
        <label for="price_261098">Kr  550,00</label>
    </div>
    <div class="price_option">
        <input type="radio" class="no_border" name="pris" value="261099" id="price_261099" />
        <label for="price_261099">Kr  600,00</label>
    </div>
</div>

Det er altså "product_prices" der er mit problem.

Som det er nu er dens højde fast, så de første 7 priser er synlige, men jeg vil gerne have, at hvis det er pris nummer 8 (eller højere) som er checked, altså default, at div'en så scroller et stykke ned. Det behøver ikke være dynamisk, bare en "side" eller et fastlagt antal pixels, men jeg kan ikke finde en løsning til dette.

Nogen der har en ide?

PS: Jeg satser stærkt på at løsningen kræver Javascript. Det er derfor jeg poster i denne gruppe.
Avatar billede roenving Novice
16. marts 2007 - 19:57 #1
Prøv at bruge hash-værdien til en url:

<script type="text/javascript">
window.onload = function(){
  if(!location.hash)
    location.hash = "#<?php echo $selected_ID ?>";
}
</script>

-- her har jeg eksemplificeret med php, men det må du nemt kunne ændre, hvis du bruger andet serverside !-)
Avatar billede Slettet bruger
19. marts 2007 - 18:23 #2
Jeg har desværre ikke fået testet det endnu.....projektet er blevet nedprioriteret lidt indtil andet er færdigt, men jeg skal nok lige sørge for at teste ved først givne lejlighed.

Skal jeg gøre noget for at lukke spørgsmålet i mellemtiden?
Avatar billede roenving Novice
19. marts 2007 - 21:05 #3
-- test du bare før vi går videre !-)
Avatar billede Slettet bruger
23. april 2007 - 15:07 #4
Fungerede desværre ikke, men det gør ikke noget. Vi ændrede efterfølgende så meget i layoutet, at det ikke var nødvendigt at scrolle div'en. :-(

Jeg takker dog for den prompte hjælp. :-)
Avatar billede Slettet bruger
23. april 2007 - 15:07 #5
Ups, jeg lukker her.
Avatar billede mclemens Nybegynder
23. april 2007 - 15:23 #6
Ingen point til Roenving ?
Nu da du er ny, så kig evt.
lige på http://www.expfaq.dk/
Avatar billede Slettet bruger
23. april 2007 - 17:21 #7
Troede kun point skulle gives ved korrekt svar?
Avatar billede mclemens Nybegynder
23. april 2007 - 19:23 #8
Tjah, måske er det bare mig, der læser det forkert.
Jeg læser dit spørgsmål som "men jeg vil gerne have, at hvis det er pris nummer 8 (eller højere) som er checked, altså default, at div'en så scroller et stykke ned." - På den måde, at du ønsker at siden scroller et stykke ned, baseret på om den ene er checked eller ej, og Roenvings forslag kunne jo bruges til det formål / til løsning af problemet ...

Du skriver så at det ikke fungerede til at scrolle ned,
umiddelbart virker den fino i min test, men det afhænger
sikkert af browseren eller websitets opbygning :-/
... Nåh, aftensmaden kalder :P


<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head><meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><title>Ingen titel</title>

<script type="text/javascript">
window.onload = function(){
  if(!location.hash)
    location.hash = "#price_261099";
}
</script>

</head><body>
<div style="height:500px;background:yellow;">Mellemrum</div>
<div id="product_prices">
    <div class="price_option">
        <input type="radio" class="no_border" name="pris" value="261092" id="price_261092" />
        <label for="price_261092">Kr  250,00</label>
    </div>
    <div class="price_option">
        <input type="radio" class="no_border" name="pris" value="261093" id="price_261093" />
        <label for="price_261093">Kr  300,00</label>
    </div>
    <div class="price_option">
        <input type="radio" class="no_border" name="pris" value="261094" id="price_261094" />
        <label for="price_261094">Kr  350,00</label>
    </div>
    <div class="price_option">
        <input type="radio" class="no_border" name="pris" value="261095" id="price_261095" />
        <label for="price_261095">Kr  400,00</label>
    </div>
    <div class="price_option">
        <input type="radio" class="no_border" name="pris" value="261096" id="price_261096" />
        <label for="price_261096">Kr  450,00</label>
    </div>
    <div class="price_option">
        <input type="radio" class="no_border" name="pris" value="261097" id="price_261097" />
        <label for="price_261097">Kr  500,00</label>
    </div>
    <div class="price_option">
        <input type="radio" class="no_border" name="pris" value="261098" id="price_261098" />
        <label for="price_261098">Kr  550,00</label>
    </div>
    <div class="price_option">
        <input type="radio" class="no_border" name="pris" value="261099" id="price_261099" checked="checked" />
        <label for="price_261099">Kr  600,00</label>
    </div>
</div>
<div style="height:500px;background:yellow;">Mellemrum</div>
<div style="height:500px;background:yellow;">Mellemrum</div>
<div style="height:500px;background:yellow;">Mellemrum</div>
</body></html>
Avatar billede Slettet bruger
24. april 2007 - 09:01 #9
Problemet er at den <div>, som priserne befinder sig i, kun er en lille del af sidens indhold, altså en <div> i en <div> i en <div> osv. :-) Det fungerede i hvert fald ikke. :-(
Avatar billede roenving Novice
27. april 2007 - 12:50 #10
Det skulle virke uanset hvor dybt, du har nestet dine div'er ...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester