det går inte att använda onunload till min sida för då går det inte att ladda om den. Jag vill ha så att om man backar ut från sidan till en helt annan eller stänger fönstret kommer en popuppruta upp med lite php kod som helst stänger sig direkt. Hur gör jag detta (förutom php)
vad ska jag göra??
7 svar · 287 visningar · startad av patrik2002
Den lösning som jag hittills kommit fram till, och som funkar relativt bra, är att skapa en frame, och lägga onunload-koden på en sida typ längst upp i frameset:et eller ja vart som helst, sidan behöver ju ändå inte ges mer än typ en pixels bredd eller höjd...
Om man sedan surfar bort från sidan försvinner ju frameset:et och onunload startar... likadant om man stänger browsern...
Det har jag klurat fram, hoppas att du kan ha nytta av det.
MVH Patrik
men fungerar det även om en person trycker på refresh?
Nej, om man refreshar sidan så kommer ju onunload:en att köras eftersom sidan hämtar frameset:et på nytt.
Klurigheten ligger ju i att man använder meta-taggarna för att automatiskt refresha just den sidan som behöver uppdateras, och då uppdateras bara sidan som ligger i en av ramarna i frameset:et
Hope it helps.
MVH Patrik
det skulle vara väldigt snällt om du kunde skriva scriptet alltså för 2 sidor och en som heter default som håller reda på ramarna
alltså default håller ihop ramarna sen har vi uppe som ska innehålla en banner (och unload scriptet) och sen body som ska vara med meta saken du prata om...
Dåskavise:
default
<html>
<head>
<title>En titel här</title>
</head>
<frameset rows="50,*" border="0">
<frame src="banner.htm" name="banner" noresize border="0">
<frame src="start.htm" name="mainframe" noresize border="0">
</frameset>
</html>
banner
<html>
<head>
<title>Banner</title>
<!-- Begin: Free code created at [url]www.hits4me.com[/url] -->
<SCRIPT LANGUAGE="JavaScript">
<!--
function popwin() {
myWindow = window.open("","windowRef","width=320,height=200,screenX=200,screenY=200,top=200,left=200,toolbar=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes");
myWindow.location.href = "http://localhost/logout.php";
if (!myWindow.opener) myWindow.opener = self;}
var flag = 1;
function go() {
if (flag==1) {
popwin();
}
}
-->
</SCRIPT>
<!-- End: Free code created at [url]www.hits4me.com[/url] -->
</head>
<body onunload="go()">
<img src="banner.jpg">
</body>
</html>
start
<html>
<head>
<title>En titel här</title>
<meta http-equiv="refresh" content="360;url=start.htm">
</head>
<body>
Lite innehåll på sidan som kommer uppdateras var 360:e sekund
</body>
</html>
och sedan kan det vara värt att nämnas att jag i logout.php (som javascriptet på banner sidan pekar på) kör lite kod mot databasen och i mitt fall tar död på alla sessioner för den användaren, för att till sist skriva ut denna html-kod:
logout
<html>
<head>
<title>Logout in progress</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<p> </p>
<div align="center">Utloggningen lyckades!</div>
<p> </p>
<script>window.close();</script>
</body>
</html>
Tack patrik!!! om du vill så kan du ge mig namnet på din sida så kommer du att hamna på mitt länkarkiv på min sida.... ge gärna din banners (om du har någon) url
tyvärr finns det ingen länk, för jag leker bara med php på min hårddisk (länken i javascriptet pekar ju just på localhost) men tack för erbjudandet.
Må så gott
MVH Patrik