Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [js]zmiana obramowania kliknietego elementu
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
marcus753
witajcie, mam banalny problem i nie mogę znaleć jak go rozwiązać. Załóżmy że mam zdjęcie:

  1. <img id="pytajnik2" onclick="zaznacz()" name="0" src="images/pytajnik1.png">


i teraz po kliknięciu chciałbym zmienić obramowanie:
  1. function zaznacz(){
  2. $(this).css('border', '3px solid black');
  3. }


no i kicha nie działa, co robie źle ? koniecznie zależy mi na użyciu elementu this, będę miał kilkadziesiąt zdjęć a chce mieć tylko 1 funkcję

Pozdrawiam i dziękuję za pomoc wink.gif
Pacio
W funkcji zaznacz() nie przekazujesz o jaki element chodzi:
  1. function zaznacz(img){
  2. $(img).css('border', '3px solid black');
  3. }
  4.  
  5. <img id="pytajnik2" onclick="zaznacz(this)" name="0" src="images/pytajnik1.png">

kamil4u
Albo zrób to poprawniej, czyli oddziel HTML od JS.

Kod
$('#pytajnik2').click( function(){
       $(this).TwojeOperacjeNaTymElemencie();
});


--edit--
Cytat
koniecznie zależy mi na użyciu elementu this, będę miał kilkadziesiąt zdjęć a chce mieć tylko 1 funkcję

To tym lepiej dla "mojego" sposobu

Nadaj tym zdjęcią klasę - class=""
i

Kod
$('.TwojaKlasa').click( function(){
       $(this).TwojeOperacjeNaTymElemencie();
});


Oczywiście wtedy w HTML już bez żadnego onclick="..."

Wszystkie kody pisane z palca - mogą być jakieś literówki
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.