Avatar billede louise_christensen Nybegynder
14. januar 2003 - 12:15 Der er 13 kommentarer

flash detection

Er der nogen der kan lave et script til mig, som undersøger om brugeren har flash installeret (version 4.0, 5.0 og 6.0). Hvis ikke, redirectes brugeren automatisk til en html side.

På forhånd tak for hjælpen!
Avatar billede thulstrup Nybegynder
14. januar 2003 - 12:26 #1
Download Colin Moocks flash player inspector:
http://www.moock.org/webdesign/flash/detection/moockfpi/moockfpi.zip
Avatar billede thulstrup Nybegynder
14. januar 2003 - 12:28 #2
Du kan selvfølgelig læse om hvordan scriptet benyttes på:
http://www.moock.org/webdesign/flash/detection/moockfpi/

Ellers bare spørg, hvis du problemer med at få det til at virke.
Avatar billede nikolajdu Nybegynder
14. januar 2003 - 12:54 #3
Min version ser sådan her ud :

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>flashDetect</title>
</head>
<body bgcolor="#deded6">
<script language="vbscript"><!--
on error resume next
set f = CreateObject("ShockwaveFlash.ShockwaveFlash")
if IsObject(f) then
  flash = true
end if
flash5 = IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.5"))
flash6 = IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.6"))
--></script>
<script language="javascript" type="text/javascript">

ns4 = (document.layers)? true:false
ie4 = (document.all)? true:false
ie5 =(document.getElementById)? true:false
ns6 = (document.getElementById && !document.all)?true:false;

hvorhen = false;

if(ns4||ns6){
if (navigator.plugins) {
  for (var i=0; i < navigator.plugins.length; i++) {
    if (navigator.plugins[i].name.toLowerCase().indexOf("shockwave flash") >= 0) {
      i_flash = true;
      flash = navigator.plugins[i].description.substring(navigator.plugins[i].description.toLowerCase().lastIndexOf("flash ") + 6, navigator.plugins[i].description.length);
    }
  }
  if(flash){
findVersion = parseInt(flash.substring(0,1));
alert(findVersion)
if (!findVersion==6){
hvorhen='HarNetscapeMenikkeFlash6.html'
}else if(findVersion ==5){
hvorhen='HarNetscapeOgFlash5.html'
}else{
hvorhen='harNetscapeMenHverken5Eller6.html'
            }
        }
    }
}else if(ie4||ie5){
    if (flash5&&!flash6){
  hvorhen = 'minIEOpdateringssideforFlash6.html'
}else if(!flash5){
hvorhen = 'minIEOpdateringssideForFlash5.html'
    }
}
if(hvorhen){
self.location.href = hvorhen;
    }else if(hvorhen!=false){
alert("det kan jeg sgutte finde u&acute; a&acute; du!!")
}

</script>
min flash film kommer her (altså din egen kode)...

<object......><emebed></object>
</body>
</html>
Avatar billede louise_christensen Nybegynder
14. januar 2003 - 12:54 #4
Nu har jeg været inde og kigge på hjemmeside, men jeg kan ikke helt gennemskue hvad for noget kode jeg skal bruge...
Avatar billede nikolajdu Nybegynder
14. januar 2003 - 12:56 #5
Kan selvfølgelig udvides til at omhandle Flash 4 også, men spørgsmålet er om det er besværet værd.
Avatar billede louise_christensen Nybegynder
14. januar 2003 - 12:56 #6
det var mere genneskueligt... Jeg prøver lige at kigge lidt mere på det.
Avatar billede nikolajdu Nybegynder
14. januar 2003 - 13:00 #7
Hvis du vil bruge det så skal du lige fjerne alle linier hvor der står

alert(blabla....)

Det er kun til test.
Avatar billede louise_christensen Nybegynder
14. januar 2003 - 13:03 #8
ok
Avatar billede louise_christensen Nybegynder
14. januar 2003 - 13:47 #9
jeg får en fejlmelding, når jeg tester scriptet i explorer 5.0. Jeg får at vide at flash5 ikke er defineret. Ved du hvad der kan være galt?

Det er i denne del af scriptet:

}else if(ie4||ie5){
    if (flash5&&!flash6){
  hvorhen = 'minIEOpdateringssideforFlash6.html'
}else if(!flash5){
hvorhen = 'minIEOpdateringssideForFlash5.html'
Avatar billede nikolajdu Nybegynder
14. januar 2003 - 13:57 #10
Hvilken version af Flashplayeren har du installeret og hvilket styresystem prøver du på?
Avatar billede thulstrup Nybegynder
14. januar 2003 - 13:57 #11
Ok, en lille forklaring. Du skal bruge tre html-dokumenter:
index_flash.html som indeholder din flashfilm.
index_noflash.html som indeholder siden til brugere der ikke har flash.
index.html hvor du ligger følgende script i:

<SCRIPT LANGUAGE="JavaScript" type="text/javascript">

// moock fpi [f.lash p.layer i.nspector]
// version: 1.3.5
// written by colin moock
// code maintained at: http://www.moock.org/webdesign/flash/detection/moockfpi/
// terms of use posted at: http://www.moock.org/terms/

var requiredVersion = 4;
var useRedirect = true;
var flashPage = "index_flash.html"
var noFlashPage = "index_noflash.html"
var upgradePage = "index_noflash.html"

var flash2Installed = false;
var flash3Installed = false;
var flash4Installed = false;
var flash5Installed = false;
var flash6Installed = false;
var maxVersion = 6;
var actualVersion = 0;
var hasRightVersion = false;
var jsVersion = 1.0;

</SCRIPT>

<SCRIPT LANGUAGE="JavaScript1.1" type="text/javascript">

var isIE = (navigator.appVersion.indexOf("MSIE") != -1) ? true : false;
var isWin = (navigator.appVersion.indexOf("Windows") != -1) ? true : false;
jsVersion = 1.1;

if(isIE && isWin){
  document.write('<SCR' + 'IPT LANGUAGE=VBScript\> \n');
  document.write('on error resume next \n');
  document.write('flash2Installed = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.2"))) \n');
  document.write('flash3Installed = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.3"))) \n');
  document.write('flash4Installed = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.4"))) \n');
  document.write('flash5Installed = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.5"))) \n'); 
  document.write('flash6Installed = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.6"))) \n'); 
  document.write('</SCR' + 'IPT\> \n'); // break up end tag so it doesn't end our script
}

</SCRIPT>

<SCRIPT LANGUAGE="JavaScript" type="text/javascript">

function detectFlash() { 
  if (navigator.plugins) {
    if (navigator.plugins["Shockwave Flash 2.0"]
        || navigator.plugins["Shockwave Flash"]) {
      var isVersion2 = navigator.plugins["Shockwave Flash 2.0"] ? " 2.0" : "";
      var flashDescription = navigator.plugins["Shockwave Flash" + isVersion2].description;
      var flashVersion = parseInt(flashDescription.charAt(flashDescription.indexOf(".") - 1));

      flash2Installed = flashVersion == 2;   
      flash3Installed = flashVersion == 3;
      flash4Installed = flashVersion == 4;
      flash5Installed = flashVersion == 5;
      flash6Installed = flashVersion >= 6;
    }
  }

  for (var i = 2; i <= maxVersion; i++) { 
    if (eval("flash" + i + "Installed") == true) actualVersion = i;
  }
  if(navigator.userAgent.indexOf("WebTV") != -1) actualVersion = 3; 
  if (actualVersion >= requiredVersion) {
    if (useRedirect) {
      if(jsVersion > 1.0) {
        window.location.replace(flashPage); 
      } else {
        window.location = flashPage;
      }
    }
    hasRightVersion = true;               
  } else { 
    if (useRedirect) {
      if(jsVersion > 1.0) {
        window.location.replace((actualVersion >= 2) ? upgradePage : noFlashPage);
      } else {
        window.location = (actualVersion >= 2) ? upgradePage : noFlashPage;
      }
    }
  }
}

detectFlash();

</SCRIPT>
Avatar billede louise_christensen Nybegynder
14. januar 2003 - 14:04 #12
Jeg arbejder i flash MX , med windows XP. Den maskine jeg testede på har installeret windows 98, og har ikke noget flash installeret...
Avatar billede louise_christensen Nybegynder
14. januar 2003 - 14:05 #13
Jeg har desværre ikke tid til at kigge mere på det lige nu, men jeg vender stærkt tilbage...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

IT-JOB