Smarty und window.onLoad Problem

Callboy

Mitglied
Hallo Leute,

ich benutze auf meiner Seite Smarty als Template-System und dort wollte ich window.onLoad verwenden aber irgendwie scheint es nicht zu funktionieren.
Bekomme auch nirgendswo eine Fehler Meldung.

Mein Code sieht so aus:
Code:
window.onLoad = function() {
    alert("test");
}

Normalerweise müsste das doch funktionieren, weiß aber nicht wo das Problem liegt.
Ich kann mit Event auf Funktionen zugreifen und alert auch außerhalb eintragen aber nicht so wie oben es geschrieben ist.

Wo liegt euer Meinung nach das Problem.
Werde irgendwie nicht schlau aus der Sache und bin euch sehr Dankbar, wenn ihr mir in kürze helfen könntet.

Mit freundlichen Grüßen
Daniel
 
Hi,

der onload-Eventhandler wird durchgängig kleingeschrieben.

mfg Maik


Hallo Maik,

ich danke für deine Antwort.
Aber leider liegt das Problem nicht daran.
Habe es auch in klein Buchstaben versucht aber es funktioniert weder in Firefox noch in IE.

Das dumme daran ist auch, dass ich keine Fehlermeldung bekomme.
Weiß echt nicht mehr weiter, bin total ratlos und komme gar nicht mehr weiter.

Bitte um Hilfe

Gruß
Daniel
 
Mit der richtigen Schreibweise des Eventhandlers funktioniert das Script bei mir:
HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
<meta name="author" content="Maik">
<meta name="date" content="2009-05-27">

<title>tutorials.de | demo_Callboy</title>

<script type="text/javascript">
window.onload = function() {
    alert("test");
}
</script>

</head>
<body>

<p>Schau'n mer mal...</p>

</body>
</html>


mfg Maik
 
Hm ja so funktionierts allerdings auf eine andere Datei.
Aber leider funktioniert es nicht auf meinem Projekt.

Dabei habe ich nicht großartiges drin stehen.
Übrigens muss ich hier noch erwähnen, dass ich ModRewrite verwende (bezüglich Suchmaschinenfreundliche URL).

Mein Quelltext sieht so aus:

HTML:
<?xml version="1.0" encoding="ISO-8859-15" ?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" dir="ltr" lang="en" >
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=ISO-885915" />
		<meta http-equiv="Content-Style-Type" content="text/css" />
		<meta http-equiv="Content-language" content="en" />

		<meta name="verify-v1" content="9zvsGOX9JeehHARMTxCTGy00JdPSVJmEiUG6ZACk9Rw=" />

		<meta name="y_key" content="6ec5edf44d9177a4" />

		<meta name="generator" content="....." />
		<meta name="robots" content="index, follow" />
		<meta name="language" content="en" />
		<meta name="author" content="....." />
		<meta name="publisher" content="....." />
		
		<meta name="company" content="" />
		<meta name="page-topic" content="Internet" />

		<meta name="page-type" content="Anzeige Kleinanzeige" />
		<meta name="audience" content="Alle" />
		<meta name="DC.Creator" content="...." />
		<meta name="DC.Publisher" content="...." />		
		<meta name="DC.Rights" content="...." />
		<meta name="DC.Language" content="en" />

		<meta name="reply-to" content="..." />
		<meta name="distribution" content="global" />

		<meta name="revisit-after" content="14" />

		<meta name="description" content="" />
		<meta name="keywords" content="" />

		<title>Test</title>
		
		<base href="http://csplus/" />
		
		<link rel="stylesheet" type="text/css" href="/templates/csplus/css/basic.css" media="all" />
		<link rel="shortcut icon" href="/images/favicon.ico" />

		<script type="text/javascript" language="JavaScript" src="/templates/csplus/js/init.js"></script>

		
		<script type="text/javascript">
		<!--
		//alert("laskdjaksdllk");
		window.onload = function() {
		    alert("test");
		}
		//-->
		</script>
		
	</head>
	<body text="#000000" bgcolor="#FFFFFF" link="#FF0000" alink="#FF0000" vlink="#FF0000">
		
		aasdasd
	</body>

</html>

Und hierbei funktioniert es nicht *heul.
Wenn ich aber den Quelltext auf eine Neu erstellte Datei kopiere und es nur fürs Testen als HTML abspeichere, dann funktionierts.

Kann das vielleicht an Smarty liegen oder eher an meinem .htaccess Modrewrite ?

Mein Modrewrite sieht so aus:
Code:
<IfModule mod_setenvif.c>
	<IfDefine SSL>
		SetEnvIf User-Agent ".*MSIE.*" \
		nokeepalive ssl-unclean-shutdown \
		downgrade-1.0 force-response-1.0
	</IfDefine>
</IfModule>

<IfModule mod_rewrite.c>
	Options +FollowSymlinks -Indexes
	
	# Prozess starten
	RewriteEngine On
	# Basisverzeichnis definieren
	#RewriteBase /
	
	RewriteCond %{HTTP_REFERER} !^$
	RewriteCond %{REQUEST_URI}  !^/warning\.gif$
	RewriteCond %{HTTP_HOST}/%{HTTP_REFERER} !^([^/]+)/http://\1/
	#RewriteRule \.(gif|jpg|jpeg|png|bmp|mp3|flv|swf|wmv)$ /warning.gif [NC,R]
	
	RewriteCond %{REQUEST_FILENAME} !-f
	RewriteCond %{REQUEST_FILENAME} !-d
	RewriteRule !^index\.php5$ index.php5 [L]
	
	# Fehlermeldung erkennen
	ErrorDocument 400 /index.php5?error=1&errorID=400
	ErrorDocument 401 /index.php5?error=1&errorID=401
	ErrorDocument 403 /index.php5?error=1&errorID=403
	ErrorDocument 404 /index.php5?error=1&errorID=404
	ErrorDocument 405 /index.php5?error=1&errorID=405
	ErrorDocument 408 /index.php5?error=1&errorID=408
	ErrorDocument 410 /index.php5?error=1&errorID=410
	ErrorDocument 411 /index.php5?error=1&errorID=411
	ErrorDocument 412 /index.php5?error=1&errorID=412
	ErrorDocument 413 /index.php5?error=1&errorID=413
	ErrorDocument 414 /index.php5?error=1&errorID=414
	ErrorDocument 415 /index.php5?error=1&errorID=415
	ErrorDocument 500 /index.php5?error=1&errorID=500
	ErrorDocument 501 /index.php5?error=1&errorID=501
	ErrorDocument 502 /index.php5?error=1&errorID=502
	ErrorDocument 503 /index.php5?error=1&errorID=503
	ErrorDocument 506 /index.php5?error=1&errorID=506
		
</IfModule>


Bitte so hilft mir, verstehe das irgendwie nicht.

//EDIT:

Ich habe heraus gefunden, dass es so funktioniert:

Code:
function test() {
    alert("test");
}

window.onload = test();

Aber leider funktioniert das so wie hier nicht:

Code:
function test() {
     alert("test1");
}
window.onload = function() {
    alert("test2");
    test();
}


Ich bedanke mich schon mal im Voraus und hoffe, dass ihr mir bald Helfen könnt.

Gruß
Daniel
 
Sorry, dass was ich oben geschrieben habe, dass dieses hier:

Code:
function test() {
    alert("test");
}

window.onload = test();

funktionieren soll.
Das ist nicht ganz richtig.

Die Funktion test() wird zwar aufgerufen aber nicht erst dann, wenn die Seite geladen ist, sondern direkt am Anfang schon.
Dabei ist "onload" Funktion doch dafür da, dass dieses erst nach geladene Seite durchgeführt werden müsste.

Bitte so hilft mir, bin total ratlos.

Gruß
Daniel
 

Neue Beiträge

Zurück