Avatar billede koldy Nybegynder
17. marts 2004 - 13:38 Der er 14 kommentarer og
1 løsning

Funktions kald i et funktions kald

Hey Eksperter..

Jeg har prøvet det her men det virker ikke, det kan godt ske det ikke er den rigtige måde at gøre det på, hvis det er tilfældet så vil jeg gerne vide hvordan man ellers skal gøre..

kodeeksempler - jeg har prøvet lidt af vært.. men intet kan jeg få til at virke..

onmouseout="window.setTimeout('hide('layer-id-1')',500)"

håber det er forståeligt nok.. (er haj til javascript)
Avatar billede koldy Nybegynder
17. marts 2004 - 13:39 #1
rettelse, er _IKKE_ haj til javascript..
Avatar billede thesurfer Nybegynder
17. marts 2004 - 13:42 #2
Hvad får du af fejl?
Prøv evt med: onmouseout="tmp = 'layer-id-1'; window.setTimeout('hide(tmp)',500)"
Avatar billede =maddog= Nybegynder
17. marts 2004 - 13:45 #3
Har du prøvet
onmouseout="window.setTimeout('hide(\'layer-id-1\')',500)"
jeg ved ikke om du kan escape tegn i inline event handlers.
Faktisk er det et funktionskald i funktionskald i funktionskald, for onmouseout er også en funktion. Prøv evt.
<a href="#" onclick="alert(this);">Test</a>
for at blive overbevist.
Avatar billede nute Nybegynder
17. marts 2004 - 13:59 #4
"men intet kan jeg få til at virke" ?? hvis du i stedet for at sige at det ikke fungerer, måske du skal fortælle os hvad det er du prøver på ? og *hvad* det er der ikke fungerer ?!!

/nute
Avatar billede koldy Nybegynder
17. marts 2004 - 14:04 #5
maddog, det virkede!!!.. mange tak.. for jeg lige et svar??
Avatar billede koldy Nybegynder
17. marts 2004 - 14:06 #6
Nute, ja ok skal jeg nok huske til næste gang.. tak /Koldy
Avatar billede nute Nybegynder
17. marts 2004 - 14:06 #7
=maddog= >> jo, man kan og *skal* escape i det tilfælde ... se her:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>
<head>
    <title>Untitled</title>
    <script language="JavaScript" type="text/javascript">
    <!--
        function test( str )
        {
            alert( str );
            setTimeout( "test('" + str + "')", 1000 );
        }
    //-->
    </script>
</head>
<body>
<a href="" onmouseover="setTimeout( 'test(\'hehe\')', 1000 );">Klik</a>
</body>
</html>

men du har ikke helt ret med tanke på at det er et funktionskald i et funktionskald i et funktionskald ... onmouseover er en *eventhandler* ... ikke et funktionskald ;o]

/nute
Avatar billede koldy Nybegynder
17. marts 2004 - 14:29 #8
udmærket Nute, men nu var det maddog der kom først med svaret, så det er hans points..
´
Men tak, også for lige at få sat eventhandlet på plads ;)

/Thomas
Avatar billede =maddog= Nybegynder
17. marts 2004 - 20:39 #9
onmouseover er en eventhandler men den tilknyttes en funktion
onload = function() {
    open_annoying_popup();
}
in-line fungerer nogenlunde på den måde at det der står som værdi mellem "" ligges ind i en funktion og tilknyttes elementet. Ganske automatisk og i baggrunden naturligvis. Når der genereres et event objekt køres denne funktion. Eller er jeg galt på den?
Avatar billede nute Nybegynder
17. marts 2004 - 20:59 #10
nja ... ordspasseri kan man altid have ;o]

onmouseover er eventhandler der ikke laver særlig meget med mindre man *referer* til en funktion. Et event er ikke noget der "genereres" ... det er en programmatisk hendelse der opstår ved visse situationer. Et dagligdags eksempel på dette kan være:

jeg står ved en busholdeplads. en event kan være at en bus kommer kørende - derfor vil altid 'onbusdriveby' opstå hver gang en bus kommer kørende. med mindre jeg skal noget ... fx på arbejde, til fest eller til en kamerat, så er det ingen mening i at jeg stiger på bussen. Det er først når jeg har en "opgave" (funktion) at jeg har behov for at stige på bussen. På denne måde knytter jeg min funktion (at tage på arbejde) med eventen 'onbusdriveby' ... u c ??

en onmouseover/onmouseout osv. sker hele tiden i en browser på links, billeder osv, men det er først når man ønsker at man skal udføre noget ved disse hendelser, at man refererer til en opgave :)

/nute
Avatar billede koldy Nybegynder
17. marts 2004 - 23:22 #11
af en eller anden grund kan jeg ikke få lov at acceptere dit svar maddog..

ok sådan kunne man vel også vælge at forklare det nute.. endnu engang tak..
Avatar billede koldy Nybegynder
17. marts 2004 - 23:23 #12
accepter
Avatar billede thesurfer Nybegynder
18. marts 2004 - 08:50 #13
koldy> Du skal først markere navnene på dem der skal ha' points. Derefter kan du klikke på Accepter-knappen.
Avatar billede koldy Nybegynder
19. marts 2004 - 15:35 #14
ok thesurfer.. self, troede bare når der kun var en der har svaret, at den så kunne finde ud af det selv..

maddag here is your pointz.. :D
Avatar billede thesurfer Nybegynder
19. marts 2004 - 20:28 #15
koldy> " troede bare når der kun var en der har svaret...".. Sådan var det også før :-)
Men der var vist for mange trigger-happy brugere, der automatisk klikke på "Accepter", så snart de så knappen :-)
De gav altså points idet at der blev lagt et svar.. selvom løsningen endnu ikke var fundet..

Jeg ved dog ikke helt, om det er derfor det blev lavet om :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester