Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [js] jak przypisać do linków zdarzenie onclick
Forum PHP.pl > Forum > Po stronie przeglądarki
luki100011
Witam jak w temacie.
Dokładnie to jak uzyskać automatyczne przypisanie zdarzenia onclick do wszystkich linków na stronie?
Lejto
eyy, nie rozumiem w hrefie dajesz onclick="funkcja();" i masz...
mike
Musisz po załadowaniu strony przelecieć po wszystkich elementach drzewa DOM i dla tych które są linkiem utworzyć zdarzenie.
Możesz to zrobić sam a możesz za pomocą jQuery (w sekcji head):
Kod
<script type="text/javascript">
//<![CDATA[
$(document).ready(function() {
    $("a").click(function() {
        alert('OK');
    });
});
//]]>
</script>
Zajec
Bez jQuery
Kod
function dodaj() {
    var linki = document.getElementsByTagName('a');
    for (var i=0; i<linki.length; ++i) {
        linki[i].onclick = function() {
            alert('clicked');
        }
    }
}
Oczywiście funkcję wywołać po załadowaniu strony (np. zdarzenie onload)
luki100011
dzięki działa ekstra.

Czy da się w ten sposób odtworzyć dźwięk "klik" zamiast komunikatu przed przeładowaniem strony questionmark.gif?

Obecnie mam taki efekt
Kod
function dodaj() {
    var linki = document.getElementsByTagName('a');
    for (var i=0; i<linki.length; ++i) {
        linki[i].onclick = function(){
                        startKlik();
                    }
                }
    }
function startKlik(){
    document.all.music.src='klik.wav';
    pause(1000);
}

function pause(numberMillis) {
  var now = new Date();
  var exitTime = now.getTime() + numberMillis;
  while (true) {
    now = new Date();
    if (now.getTime() > exitTime)
   return;
  }
}


a w body
Kod
<bgsound src="#" id=music loop=1 autostart="true">


I działa w IE bardzo dobrze po kliknięciu linku odgrywa się muzyka funcja pause wstrzymuje na 1 sekunde czas wykonania przełączenia dźwięk się kończy i strona przeładowuje się. Ale działa tylko pod IE a jeszcze bym musiał tu uruchomić pod FF. Znalazłem sposób odpalenia dzwięku pod FF

Kod
<EMBED id="musicff" NAME="muza" SRC="klik.wav" LOOP=1 AUTOSTART=FALSE HIDDEN=TRUE MASTERSOUND>


Ale jak temu "ustrojstwu" kazać odpalić dzwięk gdyż aby nie odgrywał go od razu mam ustawioną wartość AUTOSTART FALSE.
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.