Jeg har problemer med at kæde det sammen med en detektion for java. Hvis du kan hjælpe med det vil jeg godt smidt 100 ekstra point i. Jeg har prøvet de 2 koder seperat og der virker de fint. Men når jeg samler det til en kode virker det ikke.
Her er min sides kode:
--------------------------------------------------------------------------
<!-- Checker om flash plugin'en er installeret -->
<script type="text/javascript">
var flashVersion = 0;
if(navigator.plugins && navigator.mimeTypes.length){
var x = navigator.plugins["Shockwave Flash"];
if(x && x.description) {
flashVersion = x.description.replace(/([a-z]|[A-Z]|\s)+/, "").replace(/(\s+r|\s+b[0-9]+)/, ".").split(".");
}
}else if (window.ActiveXObject){
try {
var axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
flashVersion = axo.GetVariable("$version").split(" ")[1].split(",");
} catch (e) {}
}
</script>
<!-- Checker om java plugin'en er installeret -->
<OBJECT id=myApplet height=1 width=1 classid=clsid:8AD9C840-044E-11D1-B3E9-00805F499D93><PARAM NAME="CODE" VALUE="DetectPluginApplet.class">
<PARAM NAME="mayscript" VALUE="true">
<PARAM NAME="scriptable" VALUE="true">
<embed type="application/x-java-applet;version=1.3" code="DetectPluginApplet" width="1" height="1" mayscript="true" scriptable="true">
</embed>
</OBJECT>
<SCRIPT src="javaversion.js" type=text/javascript>
var javaVersion = checkJavaPlugin(false);
</SCRIPT>
<!-- Udskriver en information til brugeren hvis ikke flash og java pluginen er installeret -->
<script type="text/javascript">
alert(javaVersion);
alert(flashVersion);
if (flashVersion == 0)
{
document.write('<td align=center><%= Replace(Replace(TabelTop, "'", "\'"), "100%", "80%") %><br><SPAN class=brod><center><b>Plugins:</b><br>');
document.write('<SPAN class=brod>Du har ikke Flash installeret i din browser. <a href=http://www.macromedia.com/go/getflashplayer/ target=_new><b>Tryk her</b></a> for at hente den.');
if(javaVersion == 0)
{
document.write('<SPAN class=brod>Du har ikke Java installeret i din browser. <a href=http://www.java.com/en/download/windows_automatic.jsp target=_new><b>Tryk her</b></a> for at hente den.</center><br><%= Replace(TabelBund, "'", "\'") %></td></TR><TR><TD><br></TD></TR><TR>');
}
else
{
document.write('</center><br><%= Replace(TabelBund, "'", "\'") %></td></TR><TR><TD><br></TD></TR><TR>')
}
}
else
{
if(javaVersion == 0)
{
document.write('<td align=center><%= Replace(Replace(TabelTop, "'", "\'"), "100%", "80%") %><br><SPAN class=brod><center><b>Plugins:</b><br>');
document.write('<SPAN class=brod>Du har ikke Java installeret i din browser. <a href=http://www.java.com/en/download/windows_automatic.jsp target=_new><b>Tryk her</b></a> for at hente den.</center><br><%= Replace(TabelBund, "'", "\'") %></td></TR><TR><TD><br></TD></TR><TR>');
}
else
{
}
}
</script>
<!-- Retter i versions informationerne for at kunne udskrive et pænt format -->
<SCRIPT type=text/javascript>
javaVersion = javaVersion.replace("_", " R");
javaVersion = javaVersion.replace("false", "Ikke fundet");
flashVersion = flashVersion.replace(",",".");
flashVersion = flashVersion.replace("false","Ikke fundet");
</SCRIPT>
<% Response.write "<br><center><SPAN class=brod>Flash version: <Script>document.write(flashVersion)</SCRIPT> | Java version: <Script>document.write(javaVersion)</SCRIPT>]</center>" %>
--------------------------------------------------------------------------
javaversion.js :
--------------------------------------------------------------------------
var browsername;
function doNetscapeJava() {
var java=new Object();
java.installed=navigator.javaEnabled() ? true:false;
java.version='0.0';
if (java.installed == false)
return false;
var numPlugs=navigator.plugins.length;
if (numPlugs) {
for (var x=0; x<numPlugs; x++) {
var pluginjava = navigator.plugins[x];
if (pluginjava.name.toLowerCase().indexOf('java plug-in') != -1) {
java.version=pluginjava.description.toLowerCase().split('java plug-in ')[1].split(' for')[0];
//alert("Java version"+ java.version);
return java.version;
}
}
}
return false;
}
function doMicrosoft() {
var applet = document.myApplet;
if(applet == null) {
//return("No Java support detected.\nPlease install Java plug-in.");
return(false);
};
var version = applet.getJavaVersion();
/*
if(version == "1.3.0") {
return("Java Plugin 1.3.0 installed");
}
else {
return("Java version: " + version);
};
*/
return (version);
}
function checkJavaPlugin(showAlert) {
browsername = navigator.appName;
var version;
if(browsername.indexOf("Netscape")!= -1) {
browsername="NS";
//doNetscape();
var version = doNetscapeJava();
if (showAlert == true) {
if (version == false)
alert("No Java Plug-in detected.");
else
alert("Java Plug-in version " + version);
}
else {
if (version.indexOf("undefined") != -1) {
version = "0";
return (version);
}
return (version);
}
}
else {
if(browsername.indexOf("Microsoft")!=-1) {
version = doMicrosoft();
}
else {
version = doMicrosoft(); // trying this even if not IE
if (version == false) {
version = "0";
}
}
if (showAlert == true) {
if (version == false)
alert("0");
else
alert("Java Plug-in version " + version);
}
else return (version);
};
}
--------------------------------------------------------------------------
DetectPluginApplet.class kan hentes her:
http://www.arto.dk/chat/javaDetect/DetectPluginApplet.classNår jeg åbner siden, får jeg ingen alerts. Det er altså som om at jeg ikke få kørt den midterste del af koden. Men jeg får udskrevet flash versionen nederst men ikke java.
Desuden får jeg udskrevet flash versionen som 8,0,22,0 og ikke 8.0.22.0 som jeg beder om.
Jeg vil måske tro at det har noget at gøre med indholdet af de 2 variable. For indsætter jeg følgende over mine alerts, så ser det ud til at koden virker fint nok:
javaVersion = 2;
flashVersion = 8;
Kan du hjælpe med at få koden rettet til?