Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [jQuery] Checkbox, gdzie leży błąd?
shpaque
post
Post #1





Grupa: Zarejestrowani
Postów: 651
Pomógł: 3
Dołączył: 31.01.2011
Skąd: Warszawa

Ostrzeżenie: (10%)
X----


Witam serdecznie, funkcja to:
  1. $('#line1bold').click(function(check) {
  2. {
  3. if ($('#line1bold').attr('checked'))
  4. {
  5. $('#preview').css('font-weight') == 'bold';
  6. }
  7. else
  8. {
  9. $('#preview').css('font-weight') == 'normal';
  10. }
  11. }


checkbox ma onclick=check(); - chcę aby włączony dawał czcionce (diva 'preview') bolda, a wyłączony powracał do normal.
Go to the top of the page
+Quote Post
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




$('#preview').css('font-weight') == 'bold';
Co to niby ma robic?
Go to the top of the page
+Quote Post
shpaque
post
Post #3





Grupa: Zarejestrowani
Postów: 651
Pomógł: 3
Dołączył: 31.01.2011
Skąd: Warszawa

Ostrzeżenie: (10%)
X----


zmieniać DIVowi "preview" font-weight z 'normal' na 'bold'.
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




1) == to porowanie. = to przypisanie. - zasadnicza roznica
2) W dokumentacji jquery przy opisie funkcji css() wyraznie napisali jak sie przypisuje stylom wartosi i nie ma tam zadnej mowy o = czy tez ==. Czemu tego nie przeczytales? Dokumentacje naprawde robią w jakims celu :/
Go to the top of the page
+Quote Post
shpaque
post
Post #5





Grupa: Zarejestrowani
Postów: 651
Pomógł: 3
Dołączył: 31.01.2011
Skąd: Warszawa

Ostrzeżenie: (10%)
X----


wiem, tam jest tak .css("font-weight", "bold"); a kiedy przeszukiwałem Wasze forum znalazłem taką solucję jednego z zaawansowanych użytkowników, podpisującego jeszcze ten wycinek "zrób tak - inaczej ci nie ruszy"...

ale to nei działą...

Ten post edytował shpaque 26.11.2013, 08:44:32
Go to the top of the page
+Quote Post
nospor
post
Post #6





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
wiem, tam jest tak .css("font-weight", "bold");
Brawo, tak wlasnie ma byc.

Zas co do "zaawansowanego" uzytkownika nie bede sie wypowiadal, bo rownie dobrze mogles ty zle zrozumiec. Kod co podales z == jest totalnie bez sensu i nie ma prawa dzialac.

Jesli to .css("font-weight", "bold"); nadal ci nie dziala, to byc moze zle podpiales zdarzenia na click i ci nawet do tego nie dochodzi. Sprawdz przez proste zrobienie alertow przedd .css("font-weight", "bold");
Go to the top of the page
+Quote Post
werdan
post
Post #7





Grupa: Zarejestrowani
Postów: 354
Pomógł: 100
Dołączył: 14.11.2013
Skąd: Płock

Ostrzeżenie: (0%)
-----


W podanym przykładzie spaprana jest składnia (za duzo klamerek, brak nawiasu).

http://jsfiddle.net/snWg5/

Kliknij na kwadracik.
Go to the top of the page
+Quote Post
shpaque
post
Post #8





Grupa: Zarejestrowani
Postów: 651
Pomógł: 3
Dołączył: 31.01.2011
Skąd: Warszawa

Ostrzeżenie: (10%)
X----


button ma:
  1. <input type="checkbox" id="line1bold" name="line1bold" value="b" title="Tekst pogrubiony"><label style="width:100%;height:100%;" for="line1bold">b</label>


zauwazylem ze w jquery nie musi byc akcja przypisana - bo skrypt wczesniej ja definiuje... Ale nie wiem - w js miałem onclick=check(); i prostą funkcję która nie działała przez to że na reszcie strony jest jquery i pewnie się żarło... Alert nie idzie.

  1. $('#line1bold').click(function()
  2. {
  3. alert("dupa");
  4. if ($('#line1bold').attr('checked'))
  5. {
  6. $('#preview').css('font-weight', 'bold');
  7. }
  8. else
  9. {
  10. $('#preview').css('font-weight', 'normal');
  11. }
  12. });
Go to the top of the page
+Quote Post
nospor
post
Post #9





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




No widzisz, alert sie nie wykonuje a ty sie dziwisz ze css nie chce sie zmienic... Trudne takie debugoanie? Nie. To czemu tak ciezko samemu je zrobic?

Kod js co teraz masz jest ok. Jedyny problem moze byc taki, ze podpinasz zdarzenie gdy jeszcze nie ma checkbox, pod ktorego sie podpinasz.
Go to the top of the page
+Quote Post
shpaque
post
Post #10





Grupa: Zarejestrowani
Postów: 651
Pomógł: 3
Dołączył: 31.01.2011
Skąd: Warszawa

Ostrzeżenie: (10%)
X----


http://jsfiddle.net/snWg5/10/

tu działa, zmieniłem na jQuery 1.9.1 bo z takiej korzystam no i musiałem z .attr zmienić na .prop

super wszystko gra, dzięki! (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 15:57