trendolMedlem sedan okt. 2002170 inlägg function products()
{
parent.mainFrame.location='a.html'
parent.leftFrame.location='b.html'
parent.topFrame.location='c.html'
parent.main.location='d.html'
}
..tycks inte fungera under firefox.
någon som kan ge förklaring varför? samtliga frames uppdateras; det syns bokstavligen när ramarna laddas om, men varken "a.html", "b.html", "c.html" eller "d.html" laddas in. vad är fel? någon?
Det är skillnad på window.location och document.location. Den senare är "read-only" dvs. du kan bara läsa, inte ändra. Rätta mig om jag har fel.
trendolMedlem sedan okt. 2002170 inlägg Jag förstod nog inte riktigt vad du syftade på.
Vad ska jag alltså skriva för att detta skript ska fungera för IE, Netscape, Firefox och Safari?
Observera att det finns fler funktioner, dvs
function products()
function lists()
function blaha()
..osv
MatteMedlem sedan aug. 20002 975 inlägg Någon skillnad om du kör:
parent.mainFrame.location.href = 'a.html';
?
Prova istället något i stil med:
parent.document.getElementById("mainFrame").src="a.html";
parent.document.getElementById("leftFrame").src="b.html";
parent.document.getElementById("topFrame").src="c.html";
parent.document.getElementById("main").src="d.html";
trendolMedlem sedan okt. 2002170 inlägg
missModesty skrev:
Prova istället något i stil med:
parent.document.getElementById("mainFrame").src="a.html";
parent.document.getElementById("leftFrame").src="b.html";
parent.document.getElementById("topFrame").src="c.html";
parent.document.getElementById("main").src="d.html";
Denna kod fungerade inte i Firefox.
Felet kan vara att en gammal sida ligger kvar i cachen? Lös med ett slumptal:
function products()
{
parent.mainFrame.location='a.html?rnd='+Math.random();
parent.leftFrame.location='b.html?rnd='+Math.random();
parent.topFrame.location='c.html?rnd='+Math.random();
parent.main.location='d.html?rnd='+Math.random();
}
Nu har jag kollat upp och det stämmer att det skiljer sig mellan window.location och document.location som jag nämnde innan. document.location är "read-only".
http://www.jalix.org/ressources/internet/dom/_mozilla/html/dom_doc_ref25.html#1003796
Är det säkert att parent.document.getElementById("menu").src inte fungerade i Firefox? Det fungerade nämligen hos mig.
Du kan ju alltid testa
function products() {
if(document.getElementById) {
parent.document.getElementById("mainFrame").src="a.html";
parent.document.getElementById("leftFrame").src="b.html";
parent.document.getElementById("topFrame").src="c.html";
parent.document.getElementById("main").src="d.html";
}
else {
alert("getElementById funkar inte");
}
}
Jag har ingen webbläsare som inte klarar getElementById så jag kan inte testa hur man kommer åt att ändra då. Kanske någon annan här kan hjälpa till med det.