Avatar billede hooh Nybegynder
27. september 2003 - 21:30 Der er 7 kommentarer og
1 løsning

pop op vindue på klientens maskine

Hej

Jeg er ved at lave en "MSN"-chat.

Hvis jeg har en bruger1 og en bruger2.

Hvordan kan bruger2 sende en besked som så skal poppe op på bruger1's maskine.(jeg kører en auto-refresh).

Men det skal være sådan at den kun popper op en gang og hvis vinduet er lukket, så skal der poppes op igen ved ny besked.

er der nogen der har en ide?

ved at gi' en færdig kode er jeg villig til at gi' flere point :-)
Avatar billede dawin_dk Nybegynder
27. september 2003 - 21:36 #1
du har et felt der hedder ispopup .. og så når den er poppet up så sætter du den til true .. og så udvælger du kun fra dem der ik er vist endnu :)
Avatar billede nielle Nybegynder
27. september 2003 - 21:46 #2
1) Da der ikke er direkte kontakt mellem de to browsere, skal du vælge et mellemlager. Dette kan enten være en database som den ene browser skriver i og den anden læser fra. Alternativt kan du bruge Application-variable til dette formål.

2) Den browser som skal afsende, skal have en formular hvori at man indtaster sine beskeder. Når der trykkes på Send kaldes et script som ligger beskeden i databasen.

3) Den browser som skal modtage, skal med jævne mellemrum læse i databasen. Dette gøres f.eks. ved at indlægge en iframe som reloader sig selv med korte mellemrum (hvert 5. sekund f.eks.). Hver gang at den reloader sig selv aktiveres et script som læser fra databasen og viser nye beskeder i iframens vindue.

Der er intet i vejen for at begge brosere har både en formular og en iframe.
Avatar billede hooh Nybegynder
27. september 2003 - 21:59 #3
dawin.dk: hvis brugeren bare lukker sit vindue så vil værdien jo stadig være true i databasen og så vil den ikke poppe op anden gang.

nielle: jeg bruger en Application-variable til mine beskeder. Jeg tror jeg bruger msn-login vinduet som obligatorisk. Så kan jeg lægge min iframe derind som reloader. Lukker du den lukker du msn.

Jeg har fundet nedenstående kode til at åbne et vindue.
Hvis man laver et kald til funktionen så åbner den vinduet og hvis vinduet allerede er åbnet så bruger den bare samme vindue.

function MSNLogin(){
var login_window = ("login.asp?id=1234566");
PopUpWindow = window.open(login_window,"MastiMSN","left=10, top=10,resizable=no,width=365,height=496,");
}

MSNLogin()
Avatar billede dawin_dk Nybegynder
27. september 2003 - 22:02 #4
hooh: så må du lave så den først markerer det når brugere rent faktisk requester at se beskeden .. kommer jo helt an på hvordan du opbygger dit system ... faktisk så burde det ikke tage mange timer at lave et sådan system/site
Avatar billede hooh Nybegynder
27. september 2003 - 22:09 #5
dawin : jeg er næsten lige begyndt så hvis du har en god ide så er jeg lutter øre.

jeg har fået noget kode fra activedeveloper.dk som jeg bruger til chat:

så hvert chatvindue hedder Chat.asp?id=1234567

hvert idnummer kan så køre sin egen chat.

dvs. jeg skal sende id=1234567 til den anden bruger.Så skal scriptet så vide at det er den rigtige og så poppe et vindue op.
Avatar billede hooh Nybegynder
27. september 2003 - 22:12 #6
jeg har forresten en DB hvor alle brugere der er logget på er registreret.

Navn: Bruger1 id:234
Navn: Bruger2 id:987
Navn: Bruger3 id:456

hvis jeg skal sende en besked til bruger2, så kan jeg vel "bare" bruge 987.
Men jeg kan ikke helt se hvordan
Avatar billede hooh Nybegynder
19. november 2003 - 12:10 #7
har droppet hele ideen - kunne ikke få det til at fungere
Avatar billede hooh Nybegynder
19. november 2003 - 12:10 #8
lukker
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
Kurser inden for grundlæggende programmering

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