anoniem Geplaatst: 8 januari 2003 Delen Geplaatst: 8 januari 2003 Ik heb een frameset van 3 frames (fictief). Zodra een tekstpagina wordt geladen moeten hoofd- en subtitel apart in de andere 2 frames worden gezet. Dat gebeurt vanuit de tekstpagina dmv een onLoad event. Ik heb daar een script voor maar deze werkt nogal omslachtig. Bij de onLoad worden namelijk beide andere frames geheel opnieuw geschreven. Daarnaast is er een onUnLoad event. Die reset de titels zodra de pagina wordt verlaten. Zonder deze reset worden de titels over elkaar heen geschreven. Op zich werkt dit goed. Alleen Netscape is hier erg traag mee. Het zou het mooiste zijn als de tekstpagina uitsluitend een tekstuele titel stuurt naar beide andere frames, zonder de complete pagina opmaak mee te sturen. Wie kan mij daar mee helpen ? Het gaat nu zo: In de HEAD van elke tekstpagina staat: <SCRIPT LANGUAGE="JavaScript1.1"> <!-- Hide from JavaScript-Impaired Browsers function placedoctitle(){ parent.histnav.document.write(msg); parent.labels.document.write(lbl); } function resettitle(){ parent.histnav.location.href='history.html'; parent.labels.location.href='labels.html'; } msg="<LINK REL='StyleSheet' HREF='pmn.css'><head><LINK REL='StyleSheet' HREF='thisstyle.css'></head><body><table cellspacing=0 cellpadding=0 border=0 width=100><tr><td class=labelhead width=10> </td><td width=90 class=labelhead>Hoofdtitel</td></tr></table></body>"; lbl="<head><LINK REL='StyleSheet' HREF='thisstyle.css'></head><body><table cellspacing=0 cellpadding=0 border=0 width=200><tr><td class=labelhead width=20> </td><td width=180 class=labelhead>Subtitel</td></tr></table></body>"; </SCRIPT> En dit alles wordt aangeroepen door: <body onLoad="placedoctitle()" onunLoad="resettitle()"> Bijvoorbaat dank voor suggesties. Olaf Quote Link naar reactie
anoniem Geplaatst: 8 januari 2003 Auteur Delen Geplaatst: 8 januari 2003 Ik zou als ik jou was gebruik maken van layers (<div>...</div>). De inhoud hiervan kan je met JavaScript vrij makkelijk veranderen net zoals gewone HTML pagina's, met dat verschil dat de inhoud veel kleiner zal zijn, en dus de actie sneller. En als je de div geen 'top' en 'left' meegeeft zal deze gewoon op de pagina verschijnen alsof hij er niet is, dus je kan 'm gewoon in de cel zetten (dus tussen <td> en </td>). Voor het hoe en wat kan je het beste even [url=http://www.the-cool-place.co.uk/javascript/tutorial/javascript1.html]hier[/url] kijken, alles op de eerste pagina is zowiezo Netscape compatible. Ik heb het namelijk even voor je getest... Succes ermee! - Bas. Quote Link naar reactie
anoniem Geplaatst: 8 januari 2003 Auteur Delen Geplaatst: 8 januari 2003 Ik heb even gekeken. Ik heb zo'n script nog liggen, maar deze ziet er iets gemakkelijker uit. Ik zou het script kunnen splitsen in een variabel deel voor in de HEAD en OnLoad / unOnLoad en een vast deel voor in een .js bestand. Daar is wel uit te komen. Bedankt. Olaf Quote Link naar reactie
anoniem Geplaatst: 10 januari 2003 Auteur Delen Geplaatst: 10 januari 2003 Welaan, ik ben eruit. Het eerder genoemde script op http://www.the-cool-place.co.uk/javascript/tutorial/javascript1.html heb ik herschreven en geschikt gemaakt voor mijn probleem. Klik je nu op een link, dan wordt in 2 andere frames de kenmerken van die pagina weggeschreven. Dit gebeurt van uit de pagina zelf dmv een onLoad actie. Het script staat in een apart js bestand. Een (wat warrig) voorbeeld staat op http://www.cross-links.nl/dynamic-doctitles/tcp-test-3.html. Wie belangstelling heeft voor het script kan mij mailen. Het script werkt onder IE 4+ / NN 6+. Voor Opera moet ik nog een oplossing bedenken. Voor het project waar ik aan werk is dat echter niet van belang. Olaf Quote Link naar reactie
Aanbevolen berichten
Om een reactie te plaatsen, moet je eerst inloggen