Guten Tag allerseits,
ich habe da ein Problem mit einer JS-Funktion im Safari (5.1.3) auf dem Mac (MacOS 10.7.3). Ich habe zur vorläufigen Reservierung einer Domain eine einfache Info-Site entworfen, auf der nach dem Öffnen der Site eine Animation (in diesen Fall ein Quicktime Movie / .mov) automatisch abgespielt werden soll. Das ganze habe ich per "object"-Tag zunächst wie folgt einfach in die Seite integriert:
<object data="coverani5.mov" type="video/quicktime" width="800" height="600">
<param name="src" value="bilder/coverani5.mov">
<param name="pluginspage" VALUE="http://quicktime.apple.com/">
<param name="autoplay" value="true">
<param name="kioskmode" value="true">
<param name="controller" value="false">
<!--[if !IE]> -->
<object type="video/quicktime" data="bilder/coverani5.mov"" width="800" height="600">
<param name="controller" value="false">
<param name="autoplay" value="true">
<param name="kioskmode" value="true">
</object>
<![endif]-->
</object>
Das ganze funktioniert auf dem Mac sowohl im Firefox, als auch im Safari tadellos, andere Browser, auch unter anderen BS, habe ich bisher noch nicht getestet.
Nun habe ich aber im Weiteren gelesen, das der IE allerdings wohl mit dem automatischen Auslösen der Anweisung so seine Probleme haben soll, was laut Elisabeth Castro in Problemen mit dem automatischen Start von ActiveX-Komponenten begründet liegen soll. Apple z.B. empfiehlt daher, das ganze in eine JavaScript-Funktion zu packen und diese dann per JS-Anweisung innerhalb des Site-Body aufzurufen um den Prozess automatisch auszulösen. Nun ich habe das einfach mal wie folgt umgesetzt:
1. externe Datei "animation.js" mit folgendem Inhalt angelegt:
function animation() {
document.write(
<object classid="clsid:02bf25d5-8c17-4b23-bc80-d3488abddc6b" codebase="http://www.apple.com/qtactivex/qtplugin.cab" width="800" height="600">
<param name="src" value="http://www.ebm-front-ruhr.de/fegefeuer/bilder/coverani5.mov" />
<param name="autoplay" value="true" />
<param name="controller" value="false" />
<param name="cache" value="false" />
<param name="kioskmode" value="true" />
<!--[if !IE]> -->
<object type="video/quicktime" data="http://www.ebm-front-ruhr.de/fegefeuer/bilder/coverani5.mov" width="800" height="600">
<param name="pluginspage" VALUE="http://quicktime.apple.com/" />
<param name="autoplay" value="true" />
<param name="controller" value="false" />
<param name="kioskmode" value="true" />
<param name="cache" value="false" />
</object>
<!--<![endif]-->
</object>
);
}
2. HTML Datei mit folgendem Inhalt angelegt:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta http-equiv="expires" content="0">
<meta http-equiv="cache-control" content="no-cache">
<meta name="robots" content="index">
<meta name="robots" content="follow">
<meta name="robots" content="all">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="language" content="de">
<meta http-equiv="content-language" content="de">
<title>Fegefeuer - Dortmund ... der neue Szene-Shop im Pott</title>
<script src="animation.js" type="text/javascript"></script>
<style type="text/css">
<!--
body,td,th {
font-family: Arial, Helvetica, sans-serif;
font-size: 12px;
}
body {
background-color: #000000;
}
-->
</style>
</head>
<body>
<p align="center">
<script language="JavaScript" type="text/javascript">
animation();
</script>
</p>
</body>
</html>
Das ganze funktioniert im Firefox ohne Probleme, leider jedoch nicht im Safari. Dieser meldet im Debugger dann immer für die HTML-Datei:
jsani.htm:37ReferenceError: Can't find variable: animation
und für die JS-Datei meldet der Debugger dann weiter:
animation.js:3SyntaxError: Unexepted Token '<'
Kann mir jemand sagen, was ich eventuell falsch gemacht haben könnte?