Avatar billede oliver Nybegynder
08. oktober 1999 - 14:01 Der er 15 kommentarer og
1 løsning

Load 2 urls i 2 forskellige frames

Jeg har et problem med et meget simpelt script. Scriptet virker i IE men ikke i Netscape.

function go_to(url1, url2) {
parent.menu.location = url1
parent.side.loaction = url2
}

Og funktionen kalder jeg med:

<a href="java script:go_to('menu1.html','opgaver.html')">test</a>

Jeg får fejlen "go_to is not defined."

Mine 2 frames hedder 100% menu og side så det kan ikke være her problemet opstår.

anyone ?
Avatar billede mit Nybegynder
08. oktober 1999 - 14:10 #1
Prøv med

<a href="#" OnClick="go_to('menu1.html','opgaver.html')">test</a>
Avatar billede oliver Nybegynder
08. oktober 1999 - 14:17 #2
Det skete der ikke noget ved. Nu åbnes et nyt vindue med den menu jeg kalder linket fra.
Avatar billede justincase Nybegynder
08. oktober 1999 - 14:31 #3
Det er fordi du bruger _ i funktionsnavnet. Omdøb funktionen til goTo.
Avatar billede justincase Nybegynder
08. oktober 1999 - 14:32 #4
Og brug endelig java script:goTo.....

Avatar billede oliver Nybegynder
08. oktober 1999 - 14:43 #5
Nej desværre, det hjalp heller ikke.

Kan det have nogen betydning at det er Netscape 4.5 til MAC ??
Avatar billede oliver Nybegynder
08. oktober 1999 - 14:45 #6
Nu får jeg fejlen "
goTo is not defined."
Avatar billede justincase Nybegynder
08. oktober 1999 - 14:46 #7
Har du husket at putte den ind i script tags.

Kan du ikke poste hele koden.

Og, det betyder ikke noget at det er til mac.
Avatar billede oliver Nybegynder
08. oktober 1999 - 14:51 #8
Her er mit java script:
<script language="JavaScript">
<!--

function MM_preloadImages() { //v2.0
  if (document.images) {
    var imgFiles = MM_preloadImages.arguments;
    if (document.preloadArray==null) document.preloadArray = new Array();
    var i = document.preloadArray.length;
    with (document) for (var j=0; j<imgFiles.length; j++) if (imgFiles[j].charAt(0)!="#"){
      preloadArray[i] = new Image;
      preloadArray[i++].src = imgFiles[j];
  } }
}

function MM_swapImgRestore() { //v2.0
  if (document.MM_swapImgData != null)
    for (var i=0; i<(document.MM_swapImgData.length-1); i+=2)
      document.MM_swapImgData[i].src = document.MM_swapImgData[i+1];
}

function MM_swapImage() { //v2.0
  var i,j=0,objStr,obj,swapArray=new Array,oldArray=document.MM_swapImgData;
  for (i=0; i < (MM_swapImage.arguments.length-2); i+=3) {
    objStr = MM_swapImage.arguments[(navigator.appName == 'Netscape')?i:i+1];
    if ((objStr.indexOf('document.layers[')==0 && document.layers==null) ||
        (objStr.indexOf('document.all[')  ==0 && document.all  ==null))
      objStr = 'document'+objStr.substring(objStr.lastIndexOf('.'),objStr.length);
    obj = eval(objStr);
    if (obj != null) {
      swapArray[j++] = obj;
      swapArray[j++] = (oldArray==null || oldArray[j-1]!=obj)?obj.src:oldArray[j];
      obj.src = MM_swapImage.arguments[i+2];
  } }
  document.MM_swapImgData = swapArray; //used for restore
}

function goTo(url1, url2) {
document.parent.menu.location = url1;
document.parent.side.loaction = url2;
}
//-->
</script>

De første funktioner er genreret fra Dreamweaver, den funktion jeg har problemer med står til sidst.

Funktionen kaldes med:

<a href="java script:goTo('menu1.html','opgaver.html')" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('document.menuitem9','document.menuitem9','../img/menuitem_2_9_mouseover.gif','#939376323250')" target="Main"><img src="../img/menuitem_2_9_mouseout.gif" width="122" height="23" name="menuitem9" border="0"></a>
Avatar billede justincase Nybegynder
08. oktober 1999 - 15:05 #9
Det burde virke hvis du fjerne target="Main"
Avatar billede oliver Nybegynder
08. oktober 1999 - 15:26 #10
Nu virker det 50%, dvs. at nu loader menuen, men siden loader ikke.

Da jeg før brugte:

function goTo(url1, url2) {
                    document.parent.menu.location = url1;
                    document.parent.side.loaction = url2;
                    }

fik jeg en fejl, om at document.parent has no properties, men ændrede jeg det til:

function goTo(url1, url2) {
                    parent.menu.location = url1;
                    parent.side.loaction = url2;
                    }

Loader den nu menuen men ikke siden ?
Avatar billede justincase Nybegynder
08. oktober 1999 - 15:27 #11
loaction skal rettes til location.
Avatar billede justincase Nybegynder
08. oktober 1999 - 15:27 #12
Den fejl jeg selv får flest gange :))))
Avatar billede cyberesben Nybegynder
09. oktober 1999 - 14:59 #13
er der egentlig forskel på at skrive location.href og document.location.href og bare location?
Avatar billede justincase Nybegynder
09. oktober 1999 - 16:35 #14
I de ældste browsere brugte man .href. Det er ikke nødvendigt da de også forstår .location.
Avatar billede oliver Nybegynder
11. oktober 1999 - 09:22 #15
Tak for hjælpen.
Avatar billede cyberesben Nybegynder
11. oktober 1999 - 16:07 #16
justin, ok men det er da alligevel bedst at skrive det, så man er sikke på det også virker hvis der kommer en eller anden nar med IE3 eller NS2
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