Avatar billede stefan Nybegynder
26. februar 2001 - 16:54 Der er 20 kommentarer

GetUrl

Hej..

Jeg har et problem med GetUrl.

Jeg bruger en flashknap på en side som sender følgende ud:

GetUrl(\"java script:dosomething(\'test\');\", \"_self\")

Hvis siden hvor knappen er på kører i et frameset hvor parent-framen kører på en anden server opstår der en fejl - som om javascriptet ikke findes.

Hvis siden hvor knappen er på kører i et frameset hvor parent-framen kører på samme server sker der ingen fejl.

Hvis siden kører uden frames virker det også fint.

Avatar billede diktator Nybegynder
26. februar 2001 - 17:01 #1
Prøv at navngive din frame hvori scriptet skal eksekveres og linke dertil istedet for _self
Avatar billede stefan Nybegynder
26. februar 2001 - 17:05 #2
diktator--> Har forsøgt ....
Avatar billede diktator Nybegynder
26. februar 2001 - 17:05 #3
Hvorfor skal det køre på 2 forskellige servere ??
Flash har desværre et mindre problem med MIME types, og det kan tænkes at kaldet til en ny server ikke bliver betragtet som et JavaScript-kald.
Avatar billede diktator Nybegynder
26. februar 2001 - 17:07 #4
har du adgang til serverscripting på den server hvor JavaScriptet bliver kaldt ??
Avatar billede stefan Nybegynder
26. februar 2001 - 17:14 #5
Selve framesettet kører på en alm webserver
mens denne side med flashknappen skal køre på en secure webserver.

Serverscripting ??
Avatar billede diktator Nybegynder
26. februar 2001 - 17:19 #6
Hvis du f.eks har adgang til ASP kunne du sende en variable med dit kald, der så udløser dit JAvaScript.

getURL (\"min.asp?JS=True\", \"_self\");

På din \'min.asp\' siger du at scriptet skal eksekveres hvis JS er lig med \'True\'
Avatar billede hoejrup Nybegynder
26. februar 2001 - 17:24 #7
Eksempel:

Dette script laver du i det samme dokument, som du kalder din Flash film:

<SCRIPT LANGUAGE=\"JavaScript\">
<!-- function popups(url,width,height) {window.open(url,\"newwindow\",\"toolbar=0,
location=0,directories=0,status=0,men ubar=0,scrollbars=0,resizeable=0,
width=\" + width + \",height=\" + height); } -->
</SCRIPT>

I Flash angiver du følgende kommando, der kalder din popups i html dokumentet, der har startet din
Flash film.

GetURL(\"java script:popups(page.html,400,300)\")

Det vil sige at du kalder en funktion dosomething() og indsætter variabel navnet \'test\' i funktionen. Funktionen er placeret i det html dokument, der har startet din Flash film. Hvordan harmonerer det med at du anvender _self ?

/per
Avatar billede stefan Nybegynder
26. februar 2001 - 17:39 #8
Lidt mere forklaring er vist nødvendigt:

Jeg har følgende frameset som ligger på min alm. webserver:
<frameset rows=\"*,540,*\" border=\"0\" framespacing=\"0\" frameborder=\"0\">
  <frame name=\"blank_top\" scrolling=\"no\" src=\"site01.asp\" target=\"_self\">
  <frameset cols=\"*,720,*\">
    <frame name=\"left_blank\" scrolling=\"no\" src=\"site02.asp\" target=\"_self\">   
    <frame name=\"center\" scrolling=\"no\" src=\"flashpage.asp\" target=\"_self\">   
    <frame name=\"right_blank\" scrolling=\"no\" src=\"site03.asp\" target=\"_self\">
  </frameset>
  <frame name=\"blank_bottom\" scrolling=\"no\" src=\"site04.asp\" target=\"_self\">
  <noframes>
  </noframes>
  </frameset>
<frameset>
</frameset>

I flashpage.asp, som ligger på en secureserver har jeg så min flash hvis man trykker på knappen bliver følgende javascript kaldt vi:

geturl(\"java script:flash_click(\'test\');\")

Mens mit javascript kunne se således ud:

Function flash_click(text)
{
  window.alert(text);
}

Ovenstående er meget forenklet.
Avatar billede diktator Nybegynder
26. februar 2001 - 17:58 #9
Jeg kan sg* ikke lige gennemskue hvad det er du vil med det... Men hvis dit JavaScript ligger på samme side som din Flash, skal du ikke bruge GetUrl, men Fscommand istedet:

fscommand (\"Flash_click\", VaText);
Avatar billede stefan Nybegynder
26. februar 2001 - 18:03 #10
Hmmm
Jeg vil gerne undgå FsCommand - da jeg får en meget mere overskuelig kode ved at bruge javascript, samt fscommand virker ikke på Netscape...(?)

Min flash knap skal bruges i forbindelse med navigering: Når man trykker på feks. pilop vil jeg gerne kalde et javascript, og når der feks bliver trykket på pilned vil jeg gerne kalde et andet javascript
Avatar billede diktator Nybegynder
26. februar 2001 - 18:25 #11
Kan man evt. se et link for at lette overskueligheden ;-)??
Avatar billede nikolajdu Nybegynder
26. februar 2001 - 22:27 #12
JavaScript kan slet ikke køre mellem 2 servere. Den er desværre ikke meget længere - Det ligger dybt forankret i serverside scripting.

I de allertidligste udgaver af javaScript kunne det lade sig gøre, men det blev rettet fordi folk kunne udnytte det til at køre ting på er server folk ikke havde bedt om at kommunikere med.

Du bliver nødt til at lægge dem på samme server.
Avatar billede nikolajdu Nybegynder
26. februar 2001 - 22:39 #13
Glem lige den med serverside Scripting. Skulle selvfølgelig have været Clientside.
Avatar billede stefan Nybegynder
27. februar 2001 - 08:43 #14
Jeg forstår bare ikke hvorfor...
Både javascript og flashfil ligger på samme server. Det eneste der ligger på en anden server er framesettet som siden kører i.
Avatar billede diktator Nybegynder
27. februar 2001 - 08:58 #15
Kan vi se koden på din Flash Site og den site hvori dit JavaScript ligger hvis det ikke er den samme ??....
Avatar billede hoejrup Nybegynder
27. februar 2001 - 09:11 #16
Javascriptet eller et link til scriptet skal ligge i det samme html dokument, hvor du starter din flash film.

/per
Avatar billede stefan Nybegynder
27. februar 2001 - 09:55 #17
Javascriptet ligger i samme fil som min flash film kører i.
Avatar billede hoejrup Nybegynder
27. februar 2001 - 10:39 #18
Må vi gerne se dit javascript, så vi måske kan finde fejlen.

/per
Avatar billede stefan Nybegynder
27. februar 2001 - 16:31 #19
I øjeblikket kører jeg med en simpel testfunktion:
Function flash_click(text)
{
  window.alert(text);
}

Men selv den virker ikke !!!
Avatar billede thegaydog Nybegynder
27. februar 2001 - 16:46 #20
<frameset rows=\"*,540,*\" border=\"0\" framespacing=\"0\" frameborder=\"0\">
  <frame name=\"blank_top\" scrolling=\"no\" src=\"site01.asp\" target=\"_self\">
  <frameset cols=\"*,720,*\">
    <frame name=\"left_blank\" scrolling=\"no\" src=\"site02.asp\" target=\"_self\">   
    <frame name=\"center\" scrolling=\"no\" src=\"flashpage.asp\" target=\"_self\">   
    <frame name=\"right_blank\" scrolling=\"no\" src=\"site03.asp\" target=\"_self\">
  </frameset>
  <frame name=\"blank_bottom\" scrolling=\"no\" src=\"site04.asp\" target=\"_self\">
  <noframes>
  </noframes>
  </frameset>
<frameset>
</frameset>

I flashpage.asp, som ligger på en secureserver har jeg så min flash hvis man trykker på knappen bliver følgende javascript kaldt vi:

geturl(\"java script:flash_click(\'test\');\")

Mens mit javascript kunne se således ud:

Function flash_click(text)
{
  window.alert(text);
}
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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