Supportnet / Forum / Webseiten/HTML
Bild (jpg, gif) anstelle von Flash anzeigen?
Frage
Hallo,
ich habe ein Flashobjekt in meiner Homepage integriert (Banner). Nun hat aber nicht jeder ActiveX (Internet Explorer) oder Flash-Plugins (Mozilla, Netscape u.s.w.) aktiviert bzw. installiert. Jetzt will ich, dass in diesen Browsern - welche das Flashobjekt nicht anzeigen können oder wollen - ein einfaches Bild (jpg, gif) angezeigt wird.
Wie kann ich das erreichen? Am besten mit einfachen HTML-Mitteln (also ohne lokale oder serverseitige Scripte).
[i]<gruß thj>[/i]
Antwort 1 von Cosmo
Puha.... willst du da nicht etwas zu viel? Der Code soll erkennen Ob die Flash Funktion eines Users aktiviert ist
und dan noch das Bild wenn nötig gegen ein Gif oder Jpg umtauschen?
So einen Code gibt es meines wissens nicht... ich würde dir empfehlen einfach ne Einterseite vor deine HP zu sätzen, auf der sich der User aussuchen kann ob er die Flash oder html version der page betreten will
und dan noch das Bild wenn nötig gegen ein Gif oder Jpg umtauschen?
So einen Code gibt es meines wissens nicht... ich würde dir empfehlen einfach ne Einterseite vor deine HP zu sätzen, auf der sich der User aussuchen kann ob er die Flash oder html version der page betreten will
Antwort 2 von Nessus
Hi,
Ein Ansatzpunkt wäre dieses Script, Du mußt es ggf. nur anpassen:
Ein Ansatzpunkt wäre dieses Script, Du mußt es ggf. nur anpassen:
<script language="JavaScript" type="text/javascript">
<!--
var agent = navigator.userAgent.toLowerCase();
var is_major = parseInt(navigator.appVersion);
var is_nav = ((agent.indexOf('mozilla')!=-1) && (agent.indexOf('spoofer')==-1)
&& (agent.indexOf('compatible') == -1) && (agent.indexOf('opera')==-1)
&& (agent.indexOf('webtv')==-1));
var is_nav3 = (is_nav && (is_major == 3));
var is_ie = (agent.indexOf("msie") != -1);
var is_ie3 = (is_ie && (is_major < 4));
var dontKnow = false;
var flashVersion = 0;
var requiredVersion = 4;
var hasFlashURL = "./deutsch/indexfl.html";
var upgradeURL = "./deutsch/indexfl.html";
var dontKnowURL = "./deutsch/indexht.html";
var noFlashURL = "./deutsch/indexht.html";
var browserV3URL = "./deutsch/indexht.html";
// IE4+ on Win32: attempt to create an ActiveX object using VBScript
if (agent.indexOf("msie") != -1 && parseInt(navigator.appVersion) >= 4 && agent.indexOf("win")!=-1 && agent.indexOf("16bit")==-1) {
document.write('<scr' + 'ipt language="VBScript"\> \n');
document.write('on error resume next \n');
document.write('if IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.6")) then flashVersion = 6 \n');
document.write('if flashVersion < 6 and IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.5")) then flashVersion = 5 \n');
document.write('if flashVersion < 5 and IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.4")) then flashVersion = 4 \n');
document.write('if flashVersion < 4 and IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.3")) then flashVersion = 3 \n');
document.write('</scr' + 'ipt\> \n');
}
// NS3+ and Opera3+ (support plugin array): check for Flash plugin in plugin array
else if (navigator.plugins && navigator.plugins.length > 0) {
var flashPlugin = navigator.plugins['Shockwave Flash'];
if (typeof flashPlugin == 'object') {
if (flashPlugin.description.indexOf('6.') != -1) flashVersion = 6;
else if (flashPlugin.description.indexOf('5.') != -1) flashVersion = 5;
else if (flashPlugin.description.indexOf('4.') != -1) flashVersion = 4;
else if (flashPlugin.description.indexOf('3.') != -1) flashVersion = 3;
}
}
// WebTV 2.5 supports flash 3
else if (agent.indexOf("webtv/2.5") != -1) flashVersion = 3;
// Can't detect in all other cases
else dontKnow = true;
// Redirect to appropriate page
if ((is_ie3)||(is_nav3)) location.replace(browserV3URL);
else{
if (flashVersion >= requiredVersion) location.replace(hasFlashURL);
else if (flashVersion > 0) location.replace(upgradeURL);
else if (dontKnow) location.replace(dontKnowURL);
else location.replace(noFlashURL);
}
//-->
</script>
Antwort 3 von TheHappyJoker
@Nessus:
Ich danke Dir! Aber (jetzt nicht hauen ;-) ich wollte Scripte eigentlich nicht einsetzen.
Ich dachte nur es geht über irgendeinen Parameter des OBJECT-Tags (weil's da ja so sehr viele gibt)?
<gruß thj>
Ich danke Dir! Aber (jetzt nicht hauen ;-) ich wollte Scripte eigentlich nicht einsetzen.
Ich dachte nur es geht über irgendeinen Parameter des OBJECT-Tags (weil's da ja so sehr viele gibt)?
<gruß thj>
Antwort 4 von Nessus
Patsch.... ;-))
Anderst wirst Du IMHO vernünftig keine andere Chance haben.
*grins*
HTH
Nessus
Anderst wirst Du IMHO vernünftig keine andere Chance haben.
*grins*
HTH
Nessus
Antwort 5 von aka iKArus
Falls es noch jemanden interssiert, ist ja doch schon etwas älter das Posting hier:
Alles Mumpitz, geht viel einfacher und ist valides HTML:
<object width="???" height="???"
type="application/x-shockwave-flash" data="xyz.swf">
<param name ="movie" value = "xyz.swf" />
<img src="alternative.jpg" />
</object>
Alles Mumpitz, geht viel einfacher und ist valides HTML:
<object width="???" height="???"
type="application/x-shockwave-flash" data="xyz.swf">
<param name ="movie" value = "xyz.swf" />
<img src="alternative.jpg" />
</object>

