Flash Detection - habe schon viele Versionen probiert, aber nichts funktioniert !

Status
Nicht offen für weitere Antworten.

moebi

Grünschnabel
Hallo,
habe Probleme mit der Flash-Detection! Ich habe wirklich schon viele verschiedene ausprobiert, hat aber nie richtig funktioniert, außer mit dieser. Nur leider meckert der Validator immernoch:

http://validator.w3.org/check?uri=h...(detect+automatically)&doctype=Inline&group=0

Bitte helft mir, diesen code zu berichtigen, ist wirklich wichtig, ich weiß echt nicht weiter.

Die Seite könnt Ihr unter: http://www.rentfair.de/test/news.html ansehen. Hier der code:

Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Wilhelm Kaufmann &amp; Sohn KG: News</title>
<meta name="author" content="Cornelius Kaufmann">
<meta name="publisher" content="Cornelius Kaufmann">
<meta name="copyright" content="© 2007 Wilhelm Kaufmann & Sohn KG - Muehlheim. All Rights Reserved.">
<meta name="description" content="Kaufmann & Sohn KG: Exklusive Uhrenarmb&auml;nder f&uuml;r hochwertige Uhren. Die Originale von Kaufmann.">
<meta name="keywords" content="Kaufmann, Uhrenarmband, Uhrenarmbaender, Ersatzarmband, straps, Wilhelm, Kaufmann, Cornelius, Kaufmann, Alligatorenleder">
<meta name="page-topic" content="Branche Produkt">
<meta name="page-type" content="Produktinfo">
<meta name="page-topic" content="Uhrenarmbaender">
<meta http-equiv="reply-to" content="info@kaufmann.biz">
<meta name="audience" content="alle">
<meta http-equiv="content-language" content="de">
<meta name="robots" content="index, follow">
<meta name="revisit-after" content="7 days">
<style type="text/css"> 
    <!-- 
    body  {
	background: #666666;
	margin: 0; /* Es empfiehlt sich, margin (Rand) und padding (Auff&uuml;llung) des Body-Elements auf 0 einzustellen, um unterschiedlichen Browser-Standardeinstellungen Rechnung zu tragen. */
	padding: 0;
	text-align: left; /* Hierdurch wird der Container in IE 5*-Browsern zentriert. Dem Text wird dann im #container-Selektor die Standardausrichtung left (links) zugewiesen. */
	color: #000000;
	background-color: #f2f2f2;
	margin-top: 40px;
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 100%;
	font-style: normal;
	line-height: normal;
	font-weight: normal;
	font-variant: normal;
	right: 0px;
    }
    .twoColHybLt #container {
	width: 550pt;  /* Hierdurch wird ein Container mit einer Breite erstellt, die 80% der Browserbreite betr&auml;gt. */
	background: #FFFFFF; /* Durch automatische R&auml;nder (in Verbindung mit einer Breite) wird die Seite zentriert. */
	border: 1px solid #000000;
	text-align: left; /* Hierdurch wird die Einstellung text-align: center im Body-Element &uuml;berschrieben. */
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	font-style: normal;
	line-height: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	color: #000000;
	letter-spacing: normal;
	word-spacing: normal;
	white-space: normal;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 0;
	margin-left: auto;
	float: none;
	clear: none;
	top: 30px;
	page-break-before: auto;
	page-break-after: auto;
	height: auto;
    } 
    
    /* Tipps f&uuml;r sidebar1:
    1. Da wir mit relativen Einheiten arbeiten, ist es empfehlenswert, f&uuml;r die Randleiste keine Auff&uuml;llung zu verwenden. Sie wird bei standardgerechten Browsern der Gesamtbreite hinzugef&uuml;gt, und dies wiederum f&uuml;hrt zu einer unbekannten tats&auml;chlichen Breite. 
    2. Da der Randleistenwert in Gevierten (ems) angegeben wird, variiert die Breite der Randleiste je nach der Standardgrö&szlig;e des Textes.
    3. Zwischen der Kante des div und den darin liegenden Elementen kann ein Abstand eingef&uuml;gt werden, indem Sie diesen Elementen wie in ".twoColHybLt #sidebar1 p" demonstriert einen linken und rechten Rand zuweisen.
    */
    .twoColHybLt #sidebar1 {
	float: left;
	width: 20em; /* Durch die Auff&uuml;llung oben und unten entsteht in diesem div ein visueller Leerraum.  */
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 10px;
	font-style: normal;
	line-height: normal;
	font-weight: normal;
	font-variant: normal;
	color: #999999;
	background-color: #FFFFFF;
	letter-spacing: normal;
	text-align: left;
	word-spacing: normal;
	white-space: normal;
	overflow: visible;
	visibility: visible;
	z-index: auto;
	text-indent: 5px;
	padding-top: 0px;
	padding-right: 0;
	padding-bottom: 15px;
	padding-left: 0;
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
	height: auto;
	background-position: top;
    }
    .twoColHybLt #sidebar1 h3, .twoColHybLt #sidebar1 p {
    	margin-left: 10px; /* F&uuml;r jedes Element, das in den seitlichen Spalten platziert wird, sollten ein linker und ein rechter Rand angegeben werden. */
    	margin-right: 10px;
    }
    
    /* Tipps f&uuml;r mainContent:
    1. Der Abstand zwischen mainContent und sidebar1 entsteht durch den linken Rand des mainContent-div. Der Spaltenbereich bleibt unabh&auml;ngig von der Inhaltsmenge des sidebar1-div immer gleich. Sie können diesen linken Rand entfernen, falls der Text des #mainContent-div den Bereich von #sidebar1 f&uuml;llen soll, wenn der Inhalt in #sidebar1 endet.
    2. Wenn ein Element im mainContent-div platziert wird, das zu breit ist, entsteht möglicherweise ein Float-Drop (d.h. der nicht floatende mainContent-Bereich wird unter die Randleiste verschoben). Bei einem Mischlayout (prozentbasierte Gesamtbreite und em-basierte Randleiste) kann die verf&uuml;gbare Breite gegebenenfalls nicht exakt berechnet werden. Wenn die Textgrö&szlig;e des Benutzers &uuml;ber dem Durchschnitt liegt, f&auml;llt das Randleisten-div breiter aus, und dementsprechend ist im mainContent-div weniger Platz verf&uuml;gbar. Sie sollten sich dieser Einschr&auml;nkung bewusst sein. Dies gilt insbesondere, wenn der Kunde Inhalte mit Contribute hinzuf&uuml;gt.
    3. Im unten stehenden bedingten Kommentar f&uuml;r Internet Explorer wird die Zoom-Eigenschaft verwendet, um mainContent die Eigenschaft hasLayout zuzuweisen. Dadurch können möglicherweise verschiedene IE-spezifische Fehler verhindert werden.
    */
    .twoColHybLt #mainContent {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	font-style: normal;
	line-height: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	color: #000000;
	background-color: #FFFFFF;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
	margin-left: 13em;
	top: 0px;
	padding: 0px;
	left: auto;
    } 
    .clearfloat { /* Diese Klasse sollte in einem div- oder break-Element platziert werden und das letzte Element vor dem Schlie&szlig;en eines Containers sein, der wiederum einen vollst&auml;ndigen Float enthalten sollte. */
    	clear:both;
        height:0;
        font-size: 1px;
        line-height: 0px;
    }
body,td,th {
	font-family: Arial, Helvetica, sans-serif;
}
a:link {
	color: #999999;
	text-decoration: none;
}
a:visited {
	text-decoration: none;
	color: #999999;
}
a:hover {
	text-decoration: none;
	color: #000000;
}
a:active {
	text-decoration: none;
	color: #000000;
}
.Stil2 {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
}
.Stil4 {
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 12px;
	font-weight: bold;
}
    --> 
    </style>
<!--[if IE]>
    <style type="text/css"> 
    /* F&uuml;gen Sie CSS-Korrekturen f&uuml;r alle IE-Versionen in diesen bedingten Kommentar ein. */
    .twoColHybLt #sidebar1 { padding-top: 30px; }
    .twoColHybLt #mainContent { zoom: 1; padding-top: 15px; }
    /* Mit der obigen propriet&auml;ren Zoom-Eigenschaft wird IE die Eigenschaft hasLayout zugewiesen, die gegebenenfalls zur Verhinderung verschiedener Fehler erforderlich ist. */
    </style>
    <![endif]-->
<script type="text/javascript">
<!--
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
//-->
</script>
<script src="Scripts/AC_RunActiveContent.js" type="text/javascript"></script>
<link href="file:///C|/mykaufmann/einruecken.css" rel="stylesheet" type="text/css">
<style type="text/css">
<!--
.Stil9 {font-family: Arial, Helvetica, sans-serif}
.Stil1 {	color: #999999;
	font-weight: bold;
	font-size: 11px;
}
.Stil7 {font-size: 13px}
-->
</style>
<link href="Ueberschrift.css" rel="stylesheet" type="text/css">
<style type="text/css">
<!--
.Stil22 {color: #FFFFFF}
-->
</style>
</head>

<body class="twoColHybLt" onLoad="MM_preloadImages('index/Bilder/home.gif','index/over/qualitaet.gif','index/over/kontakt.gif','index/over/jobs.gif','index/over/home.gif','index/over/collection.gif','index/over/mass.gif')">

<div id="container">
      <div id="sidebar1">
        <h3><a href="index.html" target="_parent"><img src="logo.jpg" alt="Kaufmann Logo" width="176" height="58" border="0" align="top"></a></h3>
        <p>&nbsp;</p>
        <p>&nbsp;</p>
        <p>&nbsp;</p>
        <p><strong><a href="aktuell.html" target="_parent">&gt; Aktuell</a></strong></p>
        <p class="twoColHybLt"><strong><a href="collection.html" target="_parent">&gt; Feine Uhrenarmb&auml;nder</a></strong></p>
        <p><strong><a href="faltschliesse.html" target="_parent">&gt; Die Faltschliesse</a></strong></p>
        <p class="Stil23"><strong><a href="massschneiderei.html" target="_parent">&gt; Ma&szlig;schneiderei</a></strong></p>
        <p><strong><a href="premiummarke.html" target="_parent">&gt; Premiummarke</a></strong></p>
        <p><strong><a href="changeit.html" target="_parent">&gt; Change-it</a></strong></p>
        <p><strong><a href="impressum.html" target="_parent">&gt; Impressum</a></strong></p>
        <p>&nbsp;</p>
        <p>&nbsp;</p>
        <p>&nbsp;</p>
        <p>&nbsp;</p>
        <p>&nbsp;</p>
        <p>&nbsp;</p>
        <p>&nbsp;</p>
        <p>&nbsp;</p>
        <p>&nbsp;</p>
        <p>&nbsp;</p>
        <p>&nbsp;</p>
      </div>
      <a name="oben"></a>
  <div id="mainContent">
    <h1><a href="index.html" target="_parent" onMouseOver="MM_swapImage('Image21','','index/over/home.gif',1)" onMouseOut="MM_swapImgRestore()"><img src="index/Bilder/Bilder/home_ov.gif" alt="Home" name="Image21" width="61" height="35" border="0"></a><img src="index/over/news.gif" alt="News" name="Image11" width="58" height="35" border="0"><a href="collection.html" target="_parent" onMouseOver="MM_swapImage('Image12','','index/over/collection.gif',1)" onMouseOut="MM_swapImgRestore()"><img src="index/Bilder/Bilder/collection_ov.gif" alt="Collection" name="Image12" width="74" height="35" border="0"></a><a href="massschneiderei.html" target="_parent" onMouseOver="MM_swapImage('Image13','','index/over/mass.gif',1)" onMouseOut="MM_swapImgRestore()"><img src="index/Bilder/Bilder/mass_ov.gif" alt="Ma&szlig;schneiderei" name="Image13" width="110" height="35" border="0"></a><a href="qualitaet.html" target="_parent" onMouseOver="MM_swapImage('Image6','','index/over/qualitaet.gif',1)" onMouseOut="MM_swapImgRestore()"><img src="index/Bilder/Bilder/qualitaet_ov.gif" alt="Qualit&auml;t" name="Image6" width="74" height="35" border="0"></a><a href="kontakt.html" target="_parent" onMouseOver="MM_swapImage('Image9','','index/over/kontakt.gif',1)" onMouseOut="MM_swapImgRestore()"><img src="index/Bilder/Bilder/kontakt_ov.gif" alt="Kontakt" name="Image9" width="68" height="35" border="0"></a><a href="jobs.html" target="_parent" onMouseOver="MM_swapImage('Image10','','index/over/jobs.gif',1)" onMouseOut="MM_swapImgRestore()"><img src="index/Bilder/Bilder/jobs_ov.gif" alt="Jobs" name="Image10" width="75" height="35" border="0"></a></h1>
    <h1>&nbsp;</h1>
    <p><span class="Ueberschrift">News </span><br><br>
      <span class="Ueberschrift1"><span class="Stil22">G</span><br>
     &nbsp;&nbsp;&nbsp;&nbsp; <span class="Stil22">A</span></span><span class="twoColHybLt"><strong><br>
      </strong></span><span class="Stil4"><br>
      </span><span class="Ueberschrift3 Stil22">U</span></p>
<table width="460" border="0" cellspacing="0" cellpadding="0">
<tr>
            <td colspan="2"><table width="498"  border="0" cellpadding="0" cellspacing="0">
              <tr>
                <td width="21">&nbsp;</td>
                <td width="471"><script type="text/javascript">
AC_FL_RunContent( 'codebase','http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0','width','490','height','200','src','news','quality','high','pluginspage','http://www.macromedia.com/go/getflashplayer','movie','news' ); //end AC code
                </script>
                  <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="490" height="200">
            <param name="movie" value="falt.swf">
            <param name="quality" value="high">
            <embed src="falt.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="490" height="200"></embed>
          </object></td>
              </tr>
            </table></td>
            <td width="3">&nbsp;</td>
          </tr>
          <tr>
            <td colspan="2">&nbsp;</td>
            <td>&nbsp;</td>
          </tr>
          <tr>
            <td height="23" colspan="2"><a href="#" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image2','','index/Bilder/home.gif',1)"><span class="Stil9"><img src="linie.gif" alt="" width="500" height="7" border="0" align="right"></span></a></td>
            <td>&nbsp;</td>
          </tr>
          <tr>
            <td height="40" colspan="2">&nbsp;</td>
            <td>&nbsp;</td>
          </tr>
          <tr>
            <td width="124" height="15" valign="top"><br>
              <br>            </td>
            <td width="333" height="15">Hier erfahren Sie die aktuellen Neuigkeiten.</td>
            <td>&nbsp;</td>
          </tr>
          <tr>
            <td height="46" colspan="2">&nbsp;</td>
            <td>&nbsp;</td>
          </tr>
          <tr>
            <td colspan="2"><a href="#" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image2','','index/Bilder/home.gif',1)"><span class="Stil9"><img src="linie.gif" alt="" width="500" height="7" border="0" align="right"></span></a></td>
            <td>&nbsp;</td>
          </tr>
          <tr>
            <td colspan="2">&nbsp;</td>
            <td>&nbsp;</td>
          </tr>
          <tr>
            <td colspan="2"><table width="422" border="0" cellspacing="0" cellpadding="0">
              <tr>
                <td width="167"><p class="Stil1"><a href="datenschutz.html" target="_parent">&gt; Datenschutz</a></p>
                  <p class="Stil1"><a href="recht.html" target="_parent">&gt; Rechtliche Hinweise</a></p>
                <p class="Stil1"><a href="agb.html" target="_parent">&gt; AGB</a></p></td>
                <td width="255">&nbsp;</td>
              </tr>
            </table></td>
            <td>&nbsp;</td>
          </tr>
          <tr>
            <td>&nbsp;</td>
            <td valign="top">&nbsp;</td>
            <td>&nbsp;</td>
          </tr>
          <tr>
            <td colspan="2">&nbsp;</td>
            <td>&nbsp;</td>
          </tr>
          <tr>
            <td colspan="2">&nbsp;</td>
            <td>&nbsp;</td>
          </tr>
          <tr>
            <td colspan="2"><div align="right"><span class="Stil1"><span class="Stil7"><a href="#oben" target="_top">^</a></span><a href="#oben" target="_top"> Zum Seitenanfang</a></span></div></td>
            <td>&nbsp;</td>
          </tr>
          <tr>
            <td colspan="2">&nbsp;</td>
            <td>&nbsp;</td>
          </tr>
          <tr>
            <td colspan="2">&nbsp;</td>
            <td>&nbsp;</td>
          </tr>
          <tr>
            <td colspan="2">&nbsp;</td>
            <td>&nbsp;</td>
          </tr>
        </table>
    </div>
  </div>
</body>
</html>
 
Hallo, versuch es mal damit die <param> Tags zu schliessen.
<param name="movie" value="falt.swf"></param>
<param name="quality" value="high"></param>

Dann sollte es ohne Probleme durch den Validator gehen.

edith: das mit dem embed wusst ich noch gar nicht. Sorry für meinen Blödsinn.
 
Zuletzt bearbeitet:
Hallo,
habe Eure codes und Deine links probiert. Ist auch valide, super. Ich weiß aber nicht, ob es sinnvoll ist, pc-usern Quicktime anzubieten. Den haben wohl nicht alle und es müssen viel mehr user den Quick dann installieren. Außerdem funktioniert es bei mir nicht.

http://www.rentfair.de/test/changeit4.html

hier habe ich den code eingefügt. Dann soll ich nach dem installieren die Leer- oder Eingabetaste drücken. Bei mir passiert dann aber gar nichts!

Ich glaube, ich komme wohl nicht an dem swf-object vorbei.
Hat vielleicht jemand den code dafür und kann ihn mir posten. Da ich mit dem handling nicht ganz durchsteige. Wäre klasse!

Danke Euch und Gruß M.
 
Den Quicktime-Player brauchst du auch garnicht zu implementieren, denn im Posting #5 des zweiten empfohlenen Threads findest du die Variante für den Flash-Player. ;)
 
Dein Problem ist also nicht die Flash-Detection sondern das valide Einbauen eines SWF-Files ;-)

Trotz allen angebotenen Lösungen hier, würde ich dir noch UFO empfehlen. Das ist eine Javascript-Datei, die die ganze Sache für dich übernimmt und dazu auch noch wirklich W3C-konformen Code erzeugt.
 
Das ist eine Javascript-Datei, die die ganze Sache für dich übernimmt und dazu auch noch wirklich W3C-konformen Code erzeugt.
Dieses empfohlene "Konstrukt"

Code:
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="490" height="200">
<param name="allowScriptAccess" value="sameDomain" />
<param name="movie" value="falt.swf" />
<param name="quality" value="high" />
	<object type="application/x-shockwave-flash" class="mov" data="falt.swf" width="490" height="200" >
		<param name="allowScriptAccess" value="sameDomain" />
		<param name="movie" value="falt.swf" />
		<param name="quality" value="high" />
		Error text.
	</object>
</object>
in Verbindung mit diesem Stylesheet

Code:
/* hides the second object from all versions of IE */
* html object.mov {
    display: none;
}

/* displays the second object in all versions of IE apart from 5 on PC */
* html object.mov/**/ {
    display: inline;
}

/* hides the second object from all versions of IE >= 5.5 */
* html object.mov {
    display/**/: none;
}
erzeugt aber auch w3c-konformen / validen Quellcode.
 
Hi,
erst einmal lieben Dank Euch zweien :).

Ich habe alles mal ausprobiert.
Hier habe ich Deinen letzten Vorschlag eingebaut:

http://www.rentfair.de/test/changeit4.html

Ist das so richtig?

Ich habe alles, was nach Flash Player aussah gelöscht, trotzdem bekomme ich in Netscape + Firefox die .swf angezeigt (?) und im IE sogar 2x! Da ich soviel mit Active X Flashplayer und allem möglichen rumprobiert habe, mit den ganzen detections, weiß ich nicht, was ich noch löschen müßte, ohne mir noch die Programme zu zerschiessen.

Gruß M
 
Wie es scheint, hast du obiges Stylesheet noch nicht eingesetzt, weshalb das swf-File im IE doppelt angezeigt wird, denn das zweite object-Element mit der Klasse .mov ist für die modernen Browser gedacht.
 
Oh, ich hatte ein stylesheet überschrieben, das noch auf charset Utf-8 gestellt war. Das war es. Danke.
Falls sich noch einmal jemand erbarmen will, funktioniert das jetzt?
Wie gesagt, ich bekomme überall IE, Netscape, Firefox die Filme angezeigt, obwohl bei mir eigentlich kein normaler Flash Player installiert ist. Ansonsten vielen Dank!
 
Status
Nicht offen für weitere Antworten.

Neue Beiträge

Zurück