Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

JScript muke

[es] :: Javascript i AJAX :: JScript muke

[ Pregleda: 3128 | Odgovora: 9 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

lenny
Lendak Imre
saradnik, FTN, Novi Sad
NS

Član broj: 3147
Poruke: 68
*.ftn.ns.ac.yu

ICQ: 158238713


Profil

icon JScript muke15.10.2003. u 12:07 - pre 249 meseci
Treba iz JavaScript-a da pozovem komponentu iz DLL-a. Ovo sam uradio na ovaj način:
<html>
<head>
<script ...>
var o = new ActiveXObject("NekiSoft.Bookmarks");
o.Initialize();
..
</script>
</head>
...

A pitanje je sledeće: da li je moguće nekako doturiti ovaj iskreirani objekat (o) drugim HTML stranicama, na koje se stiže preko linkova, ili na koje se šalje sadržaj forme sa ove HTML stranice?
Ako jeste, kako?
Ili se mora pozivati ActiveXObject na svakoj stranici?

No signature...
 
Odgovor na temu

-zombie-
Tomica Jovanovic
freelance programmer
ni.ac.yu

Član broj: 4128
Poruke: 3448
*.verat.net

Sajt: localhost


+5 Profil

icon Re: JScript muke15.10.2003. u 15:45 - pre 249 meseci
možeš recimo da napraviš nevidljivi frejm u kome ćeš da čuvaš referencu ka tom activex objektu.

znaš ono, prva stranica ima FRAMESET sa dva frejma, jedan širine/visine 0 (ili 1) pixel, a drugi glavni u kome radiš sve ostalo (ideš kroz stranice) osim što u ovom prvom čuvaš objekte.

jeste hack, ali ja ne znam za bolji način.
 
Odgovor na temu

lenny
Lendak Imre
saradnik, FTN, Novi Sad
NS

Član broj: 3147
Poruke: 68
*.neobee.net

ICQ: 158238713


Profil

icon Re: JScript muke16.10.2003. u 09:04 - pre 249 meseci
Citat:
-zombie-:
možeš recimo da napraviš nevidljivi frejm u kome ćeš da čuvaš referencu ka tom activex objektu.


Ok, ali kako pristupam objektu iz drugog frejma?
No signature...
 
Odgovor na temu

noviKorisnik
Dejan Katašić
Novi Sad

Član broj: 13216
Poruke: 4533
*.bankmeridian.com

Sajt: www.novikorisnik.net


+5 Profil

icon Re: JScript muke16.10.2003. u 09:59 - pre 249 meseci
parent.frames[redni_broj_ili_ime_frejma].id_objekta
 
Odgovor na temu

lenny
Lendak Imre
saradnik, FTN, Novi Sad
NS

Član broj: 3147
Poruke: 68
*.neobee.net

ICQ: 158238713


Profil

icon Re: JScript muke16.10.2003. u 10:31 - pre 249 meseci
Citat:
noviKorisnik:
parent.frames[redni_broj_ili_ime_frejma].id_objekta


Hmm, ovo nisam uspeo da primenim. Pretpostavljam da je problem u tome, što ovaj objekat uopšte nije deo HTML stranice, već se samo generiše u zaglavlju, pozivom funkcije ActiveXObject().

Znači ima dva frejma, levi se zove leftFrame, u njemu stoji:
<html>
<head>
<script ...>
var o = ActiveXObject("NekiSoft.Bookmarks")
o.Initialize(); // ovo dosad radi ok
</script>
</head>
<body> ...

U drugom frejmu (koji se zove rightFrame) sam probao sledeće:
<html>
<head>
<script ...>
document.write( parent.frames[leftFrame].o.GetRootPath() )
</script>
</head>
<body> ...

Pa sam kasnije probao i sa:
document.write( top.leftFrame.o.GetRootPath() )

I nikako mi ne radi (problem nije u ActiveX objektu).
No signature...
 
Odgovor na temu

noviKorisnik
Dejan Katašić
Novi Sad

Član broj: 13216
Poruke: 4533
*.bankmeridian.com

Sajt: www.novikorisnik.net


+5 Profil

icon Re: JScript muke16.10.2003. u 10:51 - pre 249 meseci
... ako smem da malo bodem naslepo, jer već duže nisam JScriptovao

Problem je naći referencu do objekta.

Probaj da instanciraš objekat sa: document.o = ..., pa da ga referenciraš sa: parent.frames[leftFrame].document.o

Bolji predlog je da nađeš prvo na koji način ćeš ga referencirati u dokumentu gde si ga kreirao, pa tek nakon toga rešenje reference primeniš na frejmove. Znači, ako ga u njegovom dokumentu možeš pozvati sa self.document.o trebalo bi da radi onaj gornji predlog, inače neće raditi...


 
Odgovor na temu

lenny
Lendak Imre
saradnik, FTN, Novi Sad
NS

Član broj: 3147
Poruke: 68
*.neobee.net

ICQ: 158238713


Profil

icon Re: JScript muke16.10.2003. u 12:28 - pre 249 meseci
Citat:
noviKorisnik:
Problem je naći referencu do objekta.


Da li je moguće ubaciti ActiveX objekat između <OBJECT> tagova, recimo:

<object id=id_objekta type="all" declare classid="clsid:EB3A1E33-1830-44C8-A549-0E2527A649E5"></object>

Kako da se ispravno inicijalizuje objekat, da bih imao isti efekat kao sa pozivom ActiveXObject()? Dali se može koristiti PROGID umesto CLSID?
No signature...
 
Odgovor na temu

noviKorisnik
Dejan Katašić
Novi Sad

Član broj: 13216
Poruke: 4533
*.bankmeridian.com

Sajt: www.novikorisnik.net


+5 Profil

icon Re: JScript muke16.10.2003. u 12:38 - pre 249 meseci
Ne znam, od objekata sam ubacivao samo Flash filmove i to bez nekih posebnih modifikacija izuzev prosleđivanja promenljivih Flashu kroz url string. Sorry
 
Odgovor na temu

-zombie-
Tomica Jovanovic
freelance programmer
ni.ac.yu

Član broj: 4128
Poruke: 3448
*.verat.net

Sajt: localhost


+5 Profil

icon Re: JScript muke16.10.2003. u 20:13 - pre 249 meseci
Citat:
noviKorisnik:
Probaj da instanciraš objekat sa: document.o = ..., pa da ga referenciraš sa: parent.frames[leftFrame].document.o



da, ovo je dobar način. mada ne mora sa document. može i običa globalna promenjiva u jednom frejmu. npr u nevidljivom frejmu imaš:

Code:

    <script language="JavaScript">
        var globalna_referenca;
        function inicijalizacija() {
            window.globalna_referenca=17; 
            // ili već new ActiveXObject('bla bla..');
        }
    </script>


naravno, pozoveš inicijalizaciju, a iz drugog frejma ovome pristupaš sa recimo:
parent.frames[nevidljivi].globalna_referenca

jednostavno...
 
Odgovor na temu

[es] :: Javascript i AJAX :: JScript muke

[ Pregleda: 3128 | Odgovora: 9 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.