Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [jquery] a jak dodac style='' do linku
Forum PHP.pl > Forum > Po stronie przeglądarki
AndyPSV
1. nie usuwa klasy class='cccc' z <a id='franchise' class='cccc'>cos tam</a> i 2. nie chowa klasy <div id='franchise_'></div>

no czemu?
sprawdzalem, nie wystepuje w kodzie powtorzenie tych ID (#franchise, #franchise_)

troche zly przyklad, no ale na szybko wallem

  1. <!DOCTYPE html>
  2. p { color:red; margin:5px; cursor:pointer; }
  3. p.hilite { background:yellow; }
  4. </style>
  5. <script src="http://code.jquery.com/jquery-1.5.js"></script>
  6. </head>
  7. <p id='franchise'>First Paragraph</p>
  8.  
  9. <p id='x2'>Second Paragraph</p>
  10. <p>Yet one more Paragraph</p>
  11.  
  12.  
  13. <script type="text/javascript">
  14. $(document).ready(function() {
  15. $("#franchise").click(function() {
  16. $("#franchise").removeClass("cccc");
  17. $("#x2").hide();
  18. });
  19.  
  20. )};
  21. </script>
  22. </body>
  23. </html>



dobra; kuku na webhelp znalazl blad: powinno byc na koncu }); zamiast )}; <--- literowka, dzieki
AndyPSV
  1. <script type="text/javascript">
  2. $(document).ready(function() {
  3. $("#franchise").click(function() {
  4. $(this).removeClass("cccc").addClass('c000');
  5. $("#franchise_").hide();
  6. });
  7.  
  8. });
  9. </script>


cos mi powyzszy kod nie chce dzialac (z dodawaniem klasy); wiec pytam jak dodac do:

  1. <a class='cccc' id='franchise'><% $_.Franchise %></a>


style='color:#000'

?
JoShiMa
A może:
  1. $(this).removeClass("cccc");
  2. $(this).addClass('c000');
AndyPSV
to samo, nie dziala - trzeba dopisac style='color:#000' w linku; jak to zrobic?
JoShiMa
przez funkcje attr()
AndyPSV
tez nie dziala, pomocy - ratunku; co robic?
(wszystko inne w kodzie dziala, procz zmieniania koloru w tym #id, linku)

  1. <script type="text/javascript">
  2. $(document).ready(function() {
  3. $("#franchise").click(function() {
  4. $(this).removeClass("cccc").addClass('c000').attr("style","color:#000");
  5. $("#business").addClass('cccc');
  6. $("#franchise_").hide();
  7. });
  8.  
  9. $("#business").click(function() {
  10. $(this).removeClass("cccc").addClass('c000');
  11. $("#franchise").addClass('cccc');
  12. $("#franchise_").hide();
  13. });
  14. });
  15. </script>


wpadlem tylko na taki pomysl, zeby po prostu zamieniac <div>'y (schowac je); jednak nie da sie tego zrobic inaczej? [zeby juz nie kopiowac po 100 razy kodu?
Bags_Bunny
Zamień attr("style","color:#000") na css("color","#000"). Choć to, co masz teraz też powinno działać na oko.
Może jest jakiś błąd ideowy? Co chcesz uzyskać?
AndyPSV
to samo; coz - bedzie trzeba robic podmiane

<a id='business' class='pointer'>Business</a>&nbsp;&nbsp;<a class='cccc pointer' id='franchise'>Franchise</a>

tak jak widac mam 2 rzeczy: 1dna jest (Business) na czarno, natomiast druga (Franchise) jest "przezroczysta", poprzez zastosowanie (tzn. ze niby w tle); to co chcialem by bylo robione, to zamienianie tej przezroczystosci po kliknieciu na np. franchise (ze Franchise robi sie "czarne", natomiast Business "przezroczyste"); taki bajer, jednak wazny

zrobie to w tzw. "hard" way, czyli ukrycie jednego, wyswietlenie na nowo drugiego

cos nie trybi
foxbond
spróbuj może z toggleClass('cccc c000')
krowal
Kod powinien działać, na pewno zwaliłeś coś w innym miejscu.
1. może klasa tak naprawdę jest dodawana tylko nie wpływa na wygląd elementu ? (błąd z projektowaniem kodu CSS)
2. wywal to: $(document).ready(function(), cały kod wyjmij z tego bloku.
3. nie ładujesz czasem tego elementu #franchise ajaxem ? albo może tworzysz go dynamicznie w JS ? jeśli tak to -> http://api.jquery.com/live/
4. sprawdzałeś konsolę błędów ?
Bags_Bunny
Cytat(AndyPSV @ 10.03.2011, 05:48:01 ) *
zrobie to w tzw. "hard" way, czyli ukrycie jednego, wyswietlenie na nowo drugiego

To nie jest dobry pomysł. Rzuć może linkiem do strony.

Cytat(foxbond @ 10.03.2011, 07:01:21 ) *
spróbuj może z toggleClass('cccc c000')

Jest to opcja, ale skoro kilka innych, poprawnych nie zadziałało to problem leży raczej gdzieś indziej.

Cytat(krowal @ 10.03.2011, 08:29:25 ) *
2. wywal to: $(document).ready(function(), cały kod wyjmij z tego bloku.

To najpewniej przedstanie w ogóle działać, chyba że kod JS jest za kodem HTML linkow. Podobnież reszta się wykonuje, więc to też nie to.
AndyPSV
ogolnie kod dziala, ale nie chcial dzialac (tylko na wybranym jednym elemencie) na <h1> (ktore sa robione w technologii: "cufon"); jednak mimo to nie powinno to przeszkadzac (i to mnie wlasnie zastanawialo);

problem juz zostal w calosci rozwiazany, dziekuje
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.