In manchen Seiten wird abgefragt, ob der Besucher WebSpeech
installiert hat oder nicht. In der vorherigen Version der
Abfrage, wurde dazu die Versionsnummer von WebSpeech berücksichtigt.
Die Änderung der WebSpeech Abfrage ist allerdings nicht
notwendig, da WebSpeech 4 auch die Abfrage auf Version 2 korrekt
interpretiert.
Wenn die Abfrage unabhängig von der Versionsnummer sein
soll, können Sie den Code aus Skript 1 verwenden. Skript
2 zeigt eine Abfrage, die die Versionsnummer berücksichtigt
und je nach Version unterschiedliche Aktionen ausführt.
Skript1
Dieses Skript zeigt die Abfrage im HEAD und den Aufruf der
Abfrage im BODY. Das Skript erkennt auch, ob die Seite vom
Internet Explorer oder vom Netscape Navigator aufgerufen wurde.
Entsprechend könnte der Aufbau der Seite verzweigen (was
hier nicht geschieht).
Leider werden in der angezeigten Version einige Zeilen umgebrochen,
die im Skript in einer Zeile stehen müssen. Diese Zeilen
werden durch einen Rückstrich am Zeilenende gekennzeichnet.
<script language="JavaScript">
<!--
// Browser und WebSpeech Plugin abfragen
//WEBSPEECH FOR NAV DETECTION (MUST BE 1ST)
IsWebSpeech = 0;
IsNavigator = 0;
IsExplorer = 0;
if(navigator.appName=="Netscape" && navigator.plugins
&& navigator.javaEnabled) {
IsNavigator=1;
for(i=0;i<navigator.plugins.length;i++)
if(navigator.plugins[i].description.indexOf("WebSpeech")
!= -1 )
IsWebSpeech=1;
}
// -->
</script>
<!-- WEBSPEECH FOR IE DETECTION (MUST BE 2ND)-->
<script language="VBScript">
on error resume next
if(navigator.javaEnabled) then
IsExplorer=1
IsWebSpeech=IsObject(CreateObject("WebSpeech.WebSpeech"))
end if
</script>
<script language=Javascript>
// dieser Zweig bestimmt, was WebSpeech tun soll, wenn es installiert
ist.
if(IsWebSpeech==1) {
document.write("<OBJECT ID='WebSpeech1'\n");
document.write("CLASSID='CLSID:B38FEBBF-B2FD-11D3-BEC1-00500445FAEC'\n");
document.write("WIDTH=120 HEIGHT=80>\n");
document.write("<PARAM NAME='OPAQUE' VALUE='0'>\n");
document.write("</OBJECT>\n");
}
// hier geben Sie an, was passieren soll, wenn WebSpeech
nicht installiert ist
else {
document.write("<a href='http://www.webspeech.de/download.php3'>
");
document.write("<img src='pix/schweigen.gif' width='120'
height='80' ");
document.write("border='0' alt='Bitte laden Sie WebSpeech!!'></a>\n");
}
</Script>
Skript 2
Da die Singfunktion nur in WebSpeech 4 zur Verfügung steht,
werden in der Singseite von WebSpeech unterschiedliche Aktionen
ausgeführt abhängig davon, ob WebSpeech
installiert ist und wenn ja, welche Version installiert ist.
Hier der relevante Abschnitt der Seite.
if (IsWebSpeech == 1) {
var vers = window.document.WebSpeech1.GetVersion();
vers = vers.substr(0,1);
if (vers == 2)
{
// altes WebSpeech. Gesprochener Hinweis
SagEsSofort('Ich kann erst ab WebSpeech Version 4 singen.
Bitte installieren Sie WebSpeech 4 oder hören Sie
die Audiodatei.');
} else {
// neues WebSpeech - Logox singt.
window.document.WebSpeech1.LoadText(URL,AutoStart,Immediate)
}
}
else {
// kein WebSpeech installiert. Warnmeldung.
alert('WebSpeech kann erst ab Version 4 singen. Bitte installieren
Sie WebSpeech 4 oder hören Sie die Audiodatei.');
}
|