Ik ben momenteel bezig met een tabbladachtige navigatie alleen ik zit nu met het probleem dat een tab wel van kleur veranderd maar niet blijft nadat je erop geklikt heb. Ik had al ergens gelezen dat :active niet werkt zoals het heet maar ik wil wel mijn tabblad de kleur laten houden zolang je op die pagina zit.
Een eigen class "activetab" (of whatever) maken en die op het actieve element zetten? Als je geen request naar de server doet zul je de className property met JS moeten zetten en anders zet je server-side gewoon met PHP/ASP/whatever de class.
[ Voor 123% gewijzigd door RobIII op 04-02-2010 16:52 ]
There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.
Je eigen tweaker.me redirect
Over mij
Oh vergeten te vertellen dat de links direct uit de database worden opgehaald dus in principe maar 1 class kan hebben voor de links
WantHamburgerHenk schreef op donderdag 04 februari 2010 @ 16:52:
Oh vergeten te vertellen dat de links direct uit de database worden opgehaald dus in principe maar 1 class kan hebben voor de links
Ik neem aan dat je met "de links" doelt op de links waar de tabs naar verwijzen? Of...?
[ Voor 12% gewijzigd door RobIII op 04-02-2010 16:56 ]
There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.
Je eigen tweaker.me redirect
Over mij
Da's onzin. Ook als links direct uit de database komen kun je er zelf classes aan hangen, desnoods met JS.HamburgerHenk schreef op donderdag 04 februari 2010 @ 16:52:
Oh vergeten te vertellen dat de links direct uit de database worden opgehaald dus in principe maar 1 class kan hebben voor de links
Verder kan ik inhoudelijk niet zoveel zeggen over je probleem want je hebt het nagelaten relevante code te posten.
'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.
Ik heb hier momenteel geen code, ik had dit topic alvast geplaatst in de hoop dat er een oplossing zou zijn voordat ik thuis was(dacht dat het misschien niet zo moeilijk was)
De links worden opgehaald uit een database via de vb kant van een asp.net file en daarna via de pagina zelf via een asp:repeater getoond
De links worden opgehaald uit een database via de vb kant van een asp.net file en daarna via de pagina zelf via een asp:repeater getoond
...en daar kun je niet conditioneel een class tag aan toevoegen omdat...?
'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.
A:active werkt alleen zolang de pagina niet refreshed, iets dat wel gebeurd wanneer je op een normaal linkje klikt. Je zal dus dmv serverside (of Javascript...) een extra class moeten toevoegen aan de tab waar je op dat moment bent. Easy.
“The best way to get the right answer on the Internet is not to ask a question, it's to post the wrong answer.”
QA Engineer walks into a bar. Orders a beer. Orders 0 beers. Orders 999999999 beers. Orders a lizard. Orders -1 beers.
Ik maar 1 stuk code heb(asp:hyperlink) waarin ik maar 1x cssclass kan doen, voor zoveer mijn kennis het toe laat danNMe schreef op donderdag 04 februari 2010 @ 17:01:
...en daar kun je niet conditioneel een class tag aan toevoegen omdat...?
Al kon je maar 1 class zetten (en dat is niet zo) dan maak je toch een kopie van die class en noem je 'm class_active en wijzig je de properties die je voor active wil wijzigenHamburgerHenk schreef op donderdag 04 februari 2010 @ 17:05:
[...]
Ik maar 1 stuk code heb(asp:hyperlink) waarin ik maar 1x cssclass kan doen, voor zoveer mijn kennis het toe laat dan
There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.
Je eigen tweaker.me redirect
Over mij
Leg dat eens goed uit want je bent daar niet zo duidelijk in. Hoe kan ik 1 class aanspreken en dan vervolgens een kopie maken en die vervolgens niet aanspreken?RobIII schreef op donderdag 04 februari 2010 @ 17:07:
[...]
Al kon je maar 1 class zetten (en dat is niet zo) dan maak je toch een kopie van die class en noem je 'm class_active en wijzig je de properties die je voor active wil wijzigen
Jij bent niet duidelijk met wat je wilt bereiken en hoe je dat zelf had bedacht 
Laat eerst maar wat voorbeeldcode zien en dan kunnen we je wellicht weer verder helpen.
Laat eerst maar wat voorbeeldcode zien en dan kunnen we je wellicht weer verder helpen.
Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.
Ik ben niet duidelijk?HamburgerHenk schreef op donderdag 04 februari 2010 @ 17:09:
[...]
Leg dat eens goed uit want je bent daar niet zo duidelijk in.
HamburgerHenk schreef op donderdag 04 februari 2010 @ 17:09:
Hoe kan ik 1 class aanspreken en dan vervolgens een kopie maken en die vervolgens niet aanspreken?
Cascading Stylesheet:
1
2
3
4
5
6
7
8
9
10
11
| .tab { property1:value1; property2:value2; property3:value3; } /* kopie: */ .activetab { property1:value1; property2:valueX; /* values verschillen */ property3:valueY; /* values verschillen */ } |
HTML:
1
2
3
4
| <a class="tab">Bla</a> <a class="tab">Bla</a> <a class="activetab">Bla</a> <!-- "Maar 1 class" --> <a class="tab">Bla</a> |
Normaliter zou je zo te werk gaan:
Cascading Stylesheet:
1
2
3
4
5
6
7
8
9
10
11
| .tab { property1:value1; property2:value2; property3:value3; } /* Properties die verschillen voor een active tab */ .active { property2:valueX; property3:valueY; } |
HTML:
1
2
3
4
| <a class="tab">Bla</a> <a class="tab">Bla</a> <a class="tab active">Bla</a> <!-- Twee classes --> <a class="tab">Bla</a> |
Voila.
[ Voor 6% gewijzigd door RobIII op 04-02-2010 17:18 ]
There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.
Je eigen tweaker.me redirect
Over mij
Ff uit mijn hoofd hoor
en dan
code:
1
2
3
4
| <asp:repeater runat="server" id="tabbladen"> <itemtemplate> <asp:hyperlink runat="server" id="tab" cssclass="menu"></asp:hyperlink> </itemtemplate> |
en dan
code:
1
2
3
4
5
6
7
8
9
| Menu { fontzooi } Menu:Link { } Menu:Visited etc. |
[ Voor 5% gewijzigd door Terranova op 04-02-2010 17:21 ]
met asp zet je een class door middel van CssClass="" als ik het goed heb.HamburgerHenk schreef op donderdag 04 februari 2010 @ 17:09:
[...]
Leg dat eens goed uit want je bent daar niet zo duidelijk in. Hoe kan ik 1 class aanspreken en dan vervolgens een kopie maken en die vervolgens niet aanspreken?
stel daar staat in: CssClass="foo"
en je wil 2 classes hebben dan doe je CssClass="foo bar" of CssClass="foo bar active".
Als je code post, gebruik dan aub code tags.
There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.
Je eigen tweaker.me redirect
Over mij
ja dat klopt, maar het punt is dat ik het maar 1x ophaal en dus alle links in 1x dus heb ik maar 1x de cssclassharrald schreef op donderdag 04 februari 2010 @ 17:19:
[...]
met asp zet je een class door middel van CssClass="" als ik het goed heb.
stel daar staat in: CssClass="foo"
en je wil 2 classes hebben dan doe je CssClass="foo bar" of CssClass="foo bar active".
Dan moet je dus dat punt veranderen.HamburgerHenk schreef op donderdag 04 februari 2010 @ 17:21:
[...]
ja dat klopt, maar het punt is dat ik het maar 1x ophaal en dus alle links in 1x dus heb ik maar 1x de cssclass
Zoals je het nu hebt gaat het met css dus niet werken.
Ey!! Macarena \o/
Dat gaat denk ik nu lukken want nu kan ik via de db zo pagina´s aan maken waardoor dat meteen in het menu verwerkt wordt zonder dat ik de code moet aanpassenRaZ schreef op donderdag 04 februari 2010 @ 17:34:
[...]
Dan moet je dus dat punt veranderen.
Zoals je het nu hebt gaat het met css dus niet werken.
Zeg; we zijn hier geen slowchat helpdesk. Als je nou eens even een stapje achteruit doet en bedenkt hoe je het zou kunnen oplossen (hint: gebruik een for-each of iets dergelijks en dus geen repeater) i.p.v. passief gaan zitten afwachten tot iemand het voorgekauwd op tafel legt voor je.
Verder schop ik dit naar PRG aangezien het niets (meer) met CSS te maken heeft.
WEB >> PRG
Verder schop ik dit naar PRG aangezien het niets (meer) met CSS te maken heeft.
WEB >> PRG
[ Voor 16% gewijzigd door RobIII op 04-02-2010 17:41 ]
There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.
Je eigen tweaker.me redirect
Over mij
Is het niet gewoon verstandiger een standaard CSS te maken (hoef je ook maar twee 'tabs' te stijlen, de inactieve en de active). Per request bekijk je dan welke class je dan aan de (betreffende) tab moet hangen. 
Dan kan je die tab toch afwijkend laten zijn itt de rest?
Dan kan je die tab toch afwijkend laten zijn itt de rest?
[ Voor 22% gewijzigd door CH4OS op 04-02-2010 17:50 ]
Daar gaat het toch al het hele topic overGJtje schreef op donderdag 04 februari 2010 @ 17:44:
Is het niet gewoon verstandiger een standaard CSS te maken (hoef je ook maar twee 'tabs' te stijlen, de inactieve en de active). Per request bekijk je dan welke class je dan aan de (betreffende) tab moet hangen.
Dan kan je die tab toch afwijkend laten zijn itt de rest?
There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.
Je eigen tweaker.me redirect
Over mij
Ik vraag altijd de naam van de huidige pagina op (cut_to_script) en check dan welke URL (uit de database) overeen komt met die naam. Die geef ik een extra class, hoe moeilijk kan dat zijn?
Als je echt geen idee hebt waar je mee bezig bent, waarom gebruik je dan niet een <asp:Menu> tag of <asp:TreeView> ? En als het echt niet anders kan zou ik een functie aan een onload-achtig event hangen bij die asp:hyperlink die het ding een andere cssClass geeft als je daar zin in hebt. * MBV kan zich een grijs verleden herinneren waarin hij dat heeft gedaan.
Je hebt sowieso nog de HandleItemBound-event en TemplateField waar je mee kan spelen
Digitaal onderwijsmateriaal, leermateriaal voor hbo
Pagina: 1