devotionMedlem sedan jan. 20012 711 inlägg
Hej!
Jag har ett frameSet som består av topFrame, bottomFrame, leftMenuFrame och mainFrame
Ibland så vill jag ha menuFrame OCH mainFrame och ibland så vill jag bara ha mainFrame
Dessa val gör jag i topFrame som har en meny...
Kan jag göra det på något smidigt sätt?
Mvh
Henrik
Peter SMedlem sedan dec. 20025 484 inlägg
Hejsan!
Menar du att du vill kunna ladda sidor i de olika ramarna? Om så, hur vill du göra det; med länkar, <select> eller något annat?
devotionMedlem sedan jan. 20012 711 inlägg
Nä.. eller det också kanske..
det jag vill är att "splitta" mainFrame till mainFrame och leftMenuFrame (och ladda sidor där beroende på menyvalet i topFrame!
Mvh
Henrik
Peter SMedlem sedan dec. 20025 484 inlägg
Om vi antar att ditt ramsystem ser ut enligt (notera id-attributet):
<frameset rows="25%,*,25%">
<frame name="topFrame">
<frameset [b]id="middle"[/b]>
<frame name="leftMenuFrame">
<frame name="mainFrame">
</frameset>
<frame name="bottomFrame">
</frameset>
Då (i topFrame)
<a href="javascript:void(0)" onclick="top.document.getElementById('middle').cols='0,100%'">mainFrame only</a>
<a href="javascript:void(0)" onclick="top.document.getElementById('middle').cols='20%,*'">leftMenuFrame/mainFrame</a>
:)
devotionMedlem sedan jan. 20012 711 inlägg
Hmm får inte till det riktigt...
Mitt Frameset ser ut så här:
<frameset rows="85,*,80" cols="*" framespacing="0" frameborder="no" border="0">
<frame src="topFrame.html" name="topFrame" scrolling="No" noresize="noresize" id="topFrame" title="topFrame" />
<frameset id="middle">
<frame src="menu/solarArticleMenu.asp" scrolling="auto" />
<frame src="mainFrame.html" name="mainFrame" id="mainFrame" title="mainFrame" />
</frameset>
<frame src="bottomFrame.html" name="bottomFrame" scrolling="No" noresize="noresize" id="bottomFrame" title="bottomFrame" />
</frameset>
topFrame:
<table width="1000" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="100"><a href="javascript:void(0)" onclick="top.document.getElementById('middle').cols='0,100%'">Visa material</a></td>
<td width="100">Visa arbetstid </td>
<td width="120">Lägg till arbetstid </td>
<td width="120"><a href="javascript:void(0)" onclick="top.document.getElementById('middle').cols='20%,*'">Lägg till material</a></td>
<td width="60"> </td>
<td width="100"> </td>
<td width="100"> </td>
<td width="100"> </td>
<td width="100"> </td>
<td width="100"> </td>
</tr>
</table>
när jag klickar på någon av länkarna visas detta felmeddelande:
'top.document.getelementById(...)' är null eller inget objekt...
Peter SMedlem sedan dec. 20025 484 inlägg
Ange värden för cols i <frameset cols="100%,*" id="middle">. :)
devotionMedlem sedan jan. 20012 711 inlägg
Ha!
Funkar ju fint... tog bort lite för mycket först.. Det konstiga var att det fungerade i FireFox men inte i IE...
Thanx!
Men hur väljer jag vilka sidor som skall laddas?
När jag klickar på Visa material så skall ju viewmtrl.asp laddas i mainFrame och när jag klickar på Lägg till material ska ju articleMenu.asp laddas i menyn och listMtrl.asp laddas i mainFrame..
//Henrik
Peter SMedlem sedan dec. 20025 484 inlägg
Glöm inte att döpa din menyram till "leftMenuFrame":
<script type="text/javascript">
function navigate(){
var args = arguments,
len = args.length,
middle = top.document.getElementById("middle");
switch (len){
case 1:
{
middle.cols = "*,100%";
top.frames[args[0][0]].location.href = args[0][1];
} break;
case 2:
{
middle.cols = "20%,*";
for (var i = 0; i < len; ++i){
top.frames[args[i][0]].location.href = args[i][1];
}
} break;
}
}
</script>
<table width="1000" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="100"><a href="javascript:void(0)" onclick="navigate(['mainFrame','viewMtrl.asp'])">Visa material</a></td>
<td width="100">Visa arbetstid </td>
<td width="120">Lägg till arbetstid </td>
<td width="120"><a href="javascript:void(0)" onclick="navigate(['mainFrame','listMtrl.asp'], ['leftMenuFrame','articleMenu.asp'])">Lägg till material</a></td>
<td width="60"> </td>
<td width="100"> </td>
<td width="100"> </td>
<td width="100"> </td>
<td width="100"> </td>
<td width="100"> </td>
</tr>
</table>
devotionMedlem sedan jan. 20012 711 inlägg
tack för det... men det vill sig inte... riktigt hus ka framesetet se ut nu...??
ska jag hamed frame src"" ?
<frameset rows="85,*,80" cols="*" framespacing="0" frameborder="no" border="0">
<frame src="topFrame.html" name="topFrame" scrolling="No" noresize="noresize" id="topFrame" title="topFrame" />
<frameset cols="100%,*" id="middle">
<frame name="leftMenuFrame" scrolling="auto" id="leftMenuFrame" title="leftMenuFrame" />
<frame name="mainFrame" id="mainFrame" title="mainFrame" />
</frameset>
<frame src="bottomFrame.html" name="bottomFrame" scrolling="No" noresize="noresize" id="bottomFrame" title="bottomFrame" />
</frameset>
börjar känna mig tjatig... sorry...
Mvh
Henrik
Peter SMedlem sedan dec. 20025 484 inlägg
Det smög sig in ett litet fel i koden ovan. Se det redigerade inlägget. :)
devotionMedlem sedan jan. 20012 711 inlägg
Det är ju så man blir tårögd.... Vackert!!
Tack för hjälpen Peter S!
Mvh
Henrik