Avatar billede javascript Nybegynder
13. juli 2005 - 21:38 Der er 14 kommentarer og
1 løsning

Hjælp til kordinat system igen..

Hejsa, i det forrige spørgsmål virkede det med hans måde, men når jeg smider det online går det galdt.

I min "Opdater.php" fil, mens den er online får jeg udskrevet:

<script type="text/JavaScript">
parent.deleteuser(2);
parent.deleteuser(6);
parent.updateuser(8,21,304,166);
parent.insetuser(8,'Pacee',21,304,166);
</script>

i min hovedeside, som har funktioner ser sådan her ud:

<script>
function insetuser(brugerid,brugernavn,felt,left_px,top_px) {
    if(brugerid != ""){
        z = felt+200;
        document.getElementById('inset_chat').innerHTML += '<div id="user_'+brugerid+'" style="Z-INDEX: '+z+';POSITION: absolute;top:'+top_px+'px;left:'+left_px+'px;">TEST</div>';
    }
}

function updateuser(brugerid,felt,left_px,top_px){
c = felt+200;
document.getElementById('user_'+brugerid).style.left = left_px;
document.getElementById('user_'+brugerid).style.top = top_px;
document.getElementById('user_'+brugerid).style.zIndex = c;
return true;
}
</script>


<div id='inset_chat'></div>
<iframe src="opdatere.php" osv.osv.osv.>

Men det virker ikke? Hvad i alverden gør jeg forkert, please hjælp! ;D
Avatar billede javascript Nybegynder
13. juli 2005 - 21:39 #1
Det ser da rigtigt ud, ik'?
Avatar billede nielle Nybegynder
13. juli 2005 - 21:54 #2
Prøv at rette dit:

<script>

- til:

<script type="text/JavaScript">
Avatar billede olebole Juniormester
13. juli 2005 - 21:59 #3
<ole>

- vi kan ikke blive ved med at mødes på denne måde  :D

Jeg kan ikke se en funktion, der hedder 'deleteuser' - og prøver du ikke at update user nummer 8, før hans div er oprettet?  :)

/mvh
</bole>
Avatar billede olebole Juniormester
13. juli 2005 - 22:04 #4
Du kunne f.eks. have en fuktion, der ser sådan ud:

function deleteuser(id) {
    var divToRemove = document.getElementById("user_"+id);
    divToRemove.parentNode.removeChild(divToRemove);
}

Så burde dette virke:

<script type="text/JavaScript">
parent.deleteuser(2);
parent.deleteuser(6);
parent.insetuser(8,'Pacee',21,304,166);
parent.updateuser(8,21,304,166);
</script>
Avatar billede javascript Nybegynder
13. juli 2005 - 22:14 #5
Ja, men nu udskriver den "test" over alt på skærmen :P
Avatar billede olebole Juniormester
13. juli 2005 - 22:21 #6
*LooOooOooL* det er zq da et fremskridt ... hvis vi altså kan finde ud af at tæmme den  :D
Avatar billede javascript Nybegynder
13. juli 2005 - 22:23 #7
Hehe.. ;D Sidder lige og bikser noget.. Så kommer nok med en fejl mere om nogle minutter!
Avatar billede javascript Nybegynder
13. juli 2005 - 22:26 #8
Ole, kan du ikke lave sådan den ikke skal lave dobbel div's med bruger_ også id'et? Det pisse irriterendet at se på!:P
Avatar billede olebole Juniormester
13. juli 2005 - 22:27 #9
Lad os gøre som før og se, om det hjælper. Prøv disse to dokumenter:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <title>TITLE</title>
<script type="text/JavaScript">
function deleteuser(id) {
    var divToRemove = document.getElementById("user_"+id);
    divToRemove.parentNode.removeChild(divToRemove);
}
function insetuser(brugerid,brugernavn,felt,left_px,top_px) {
    if(brugerid != ""){
        z = felt+200;
        document.getElementById('inset_data').innerHTML += '<div id="user_'+brugerid+'" style="Z-INDEX: '+z+';POSITION: absolute;top:'+top_px+'px;left:'+left_px+'px;">TEST</div>';
    }
}
function updateuser(brugerid,felt,left_px,top_px){
    c = felt+200;
    document.getElementById('user_'+brugerid).style.left = left_px + "px";
    document.getElementById('user_'+brugerid).style.top = top_px + "px";
    document.getElementById('user_'+brugerid).style.zIndex = c;
    return true;
}
</script>
<style type="text/css">
#inset_data div {
    background-color: red;
}
</style>
</head>
<body>

<button onclick="document.getElementById('myFrame').src='iframe.html'">Test</button>

<iframe id="myFrame"></iframe>

<div id="inset_data">
    <div id="user_2">Bruger nummer 2</div>
    <div id="user_6">Bruger nummer 6</div>
</div>

</body>
</html>

- og 'iframe.html':

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <title>TITLE</title>
<script type="text/JavaScript">
parent.deleteuser(2);
parent.deleteuser(6);
parent.insetuser(8,'Pacee',21,304,166);
parent.updateuser(8,21,304,166);
</script>
</head>
<body>


</body>
</html>
Avatar billede olebole Juniormester
13. juli 2005 - 22:28 #10
- og så forstod jeg ikke lige din seneste kommentar  :)
Avatar billede olebole Juniormester
13. juli 2005 - 22:30 #11
PS: Læg mærke til "px" i funktionen updateuser. Jeg nævnte det også i det andet spørgsmål  :)
Avatar billede javascript Nybegynder
13. juli 2005 - 22:41 #12
Jeps, men problemet er..
Hvis brugeren laver et nyt felt så viser den 2 af "test". Kunne være fint hvis du kunne "fjerne" det forrige felt
Avatar billede olebole Juniormester
13. juli 2005 - 23:46 #13
Så skal du lave to af funktionerne om til:

function deleteuser(id) {
    var divToRemove = document.getElementById("user_"+id);
    if (divToRemove) divToRemove.parentNode.removeChild(divToRemove);
}
function insetuser(brugerid,brugernavn,felt,left_px,top_px) {
    if(brugerid != ""){
        deleteuser(brugerid);
        z = felt+200;
        document.getElementById('inset_data').innerHTML += '<div id="user_'+brugerid+'" style="Z-INDEX: '+z+';POSITION: absolute;top:'+top_px+'px;left:'+left_px+'px;">TEST</div>';
    }
}
Avatar billede javascript Nybegynder
14. juli 2005 - 15:40 #14
Så viser den slet ikke noget :P, men har sådan nogenlunde fixet det..
Smid svar!
Avatar billede olebole Juniormester
14. juli 2005 - 16:05 #15
Du må lave nogle fejl, for det _skal_ fungere - og det gør det da også, når jeg tester det  :)
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