Avatar billede s Nybegynder
21. maj 2000 - 20:23 Der er 4 kommentarer og
2 løsninger

HASTER: Hvad er der galt her???

Er der nogle der kan finde fejlen i dette:


function init() {
fdiv = new divtag('fordiv')

fdiv.elm.onmousedown = klikned
fdiv.elm.onmousemove = bevaeg
fdiv.elm.onmouseup = klikop

}


function divtag(id) {
this.elm = this.event = document.all[id]
this.x = this.elm.offsetLeft
this.y = this.elm.offsetTop
}

Det er den del af mit script der giver en fejl.
Den kommer med en fejl hvor den skriver der ikke er noget der hedder "offsetLeft". Jeg har også prøvet med "offsetX", men det giver samme resultat. Nogle der har en ide?
Avatar billede olebole Juniormester
21. maj 2000 - 20:29 #1
Hvordan har du defineret 'elm' ?
Avatar billede olebole Juniormester
21. maj 2000 - 21:36 #2
<ole>
Eeeehhhh....Undskyld, jeg kan vist ikke læse ;-)
Her skal du se:

<html>
<head>
<script language="JavaScript">
<!--
function klikned() {
    alert(fdiv.x+" , "+fdiv.y);
}
function init() {
fdiv = new divtag('fordiv')
fdiv.elm.onmousedown = klikned
//fdiv.elm.onmousemove = bevaeg
//fdiv.elm.onmouseup = klikop
}
function divtag(id) {
this.elm = this.event = document.all[id]
this.x = this.elm.offsetLeft;
this.y = this.elm.offsetTop;
return this;
}

//-->
</script>
<style type="text/css">
#fordiv { position:absolute; left:100px; top: 50px; }
</style>
</head>

<body onload=init();>

<div id="fordiv">hallo</div>

</body>
</html>

Læg mærke til, jeg sætter styles på div'et og at funktionerne er defineret før init() kaldes - derfor er de to 'bevaeg' og 'klikop' udkommenteret nu, da jeg ikke har lavet nogen funktioner til dem.
Sidst, men ikke mindst...og her ligger kagen nok: Du skal spørge med 'fdiv' - ikke 'fordiv'! 'fdiv' er jo det objekt, du så møjsommeligt har bygget ;-))

/Vh
</bole>
Avatar billede olebole Juniormester
21. maj 2000 - 21:44 #3
Det ser iøvrigt ud til, du bakser med Dan Steinman's The Dynamic Duo, hvilket jeg absolut bifalder ;-)
Næste skridt må så være at gøre den X-browser...på med vanten og pøj, pøj ;-))
/Vh
Avatar billede s Nybegynder
22. maj 2000 - 17:39 #4
Desværre, dit script virker godt nok, men det ligner meget det jeg har.

Jeg har også sat styles på "fordiv".
Og "init()" bliver først kaldte i "body onload=..."
Den sidste med at jeg skal spørge med fdiv forstår jeg ikke helt... Hvis du mener jeg skal spørge med den i "klikned" så er det det jeg gør.

Jeg syntes at det mærkelige er at min browser siger at "this.elm.offsetLeft" ikke er defineret...
Avatar billede s Nybegynder
22. maj 2000 - 17:51 #5
Alt for meget til grin...

Jeg manglede en "... Men den kan sq være svær at finde når koden sniger sig op omkring de 450 linier...


100 points til ole som tak for hjælpen...
Avatar billede olebole Juniormester
22. maj 2000 - 19:39 #6
Ja, hvor fanden er det nu, jeg kender det fra...LOL  ;-D
Selv tak ;-)
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