Youtube Videos

Hallo,

ich habe mir ein so einigermaßen gutes Skript gebaut, damit der Youtube Player erst auftaucht, wenn man auf den Link für das Video klickt.

Ich hab jetzt den Code:

[code]

testcase a span#hide, a:hover span#hide {display:none; text-align:justify; color:black; text-decoration:none;} a:focus span#hide, a:active span#hide { padding:1px; display:block; top:20px;left:200px; position:absolute; }
  </style>
</head>
<body>
  <a href="#">Show Youtubevideo
    <span id="hide">
      <object width="250" height="250">
        <param name="movie" value="http://www.youtube.com/v/JPONTneuaF4&hl=de&fs=1&autoplay=1"></param>
        <param name="allowFullScreen" value="true"></param>
        <embed src="http://www.youtube.com/v/JPONTneuaF4&hl=de&fs=1&autoplay=1" type="application/x-shockwave-flash" allowfullscreen="true" width="250" height="250"></embed>
      </object>
    </span>
  </a>
  <br>                          <a href="#">Show Youtubevideo
    <span id="hide">
      <object width="425" height="344">
        <param name="movie" value="http://www.youtube.com/v/JPONTneuaF4&hl=de&fs=1&autoplay=1"></param>
        <param name="allowFullScreen" value="true"></param>
        <embed src="http://www.youtube.com/v/JPONTneuaF4&hl=de&fs=1&autoplay=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"></embed>
      </object>
    </span>
  </a>

</body>
[/code]

So alles hübsch, außer:
Wenn ich bei der Wiedergabe irgendwo klicke, beispielsweise auf die Pause Taste verschwindet das Video.

Wie kann ich das beheben?

Grüße

das was du da hast, würde das Youtube video nur anzeigen, wenn du den Focus auf das video hast… wie genau “active” funzt weiß ich auch nicht wirklich, da es nie das macht, was man vielleicht erwartet.

Davon abgesehen ist es laut standard nicht erlaubt, die gleiche id mehreren Elementen zu geben.

Wenn du nichts dagegen hast Flash auf deiner Seite einzubinden, sollte so eine Simple JavaScript lösung auch in ordnung sein:

[code]

testcase

.hide {
display:none;
}

Show Youtubevideo









Show Youtubevideo









[/code]

mfg Balmung

Soo alles supa bloß noch eins:

Wenn ich auf einen anderen Link klicke soll das andere Video weggehen.

Geht das auch?!

Danke

und noch ne frage: was is GetElementByID

Das Element ‘embed’ gibt es in XHTML1.1 auch nicht, das kann
man auch komplett weglassen, stattdessen verwendet man
beim Element ‘object’ ganz normal das Attribute ‘type’ und für
die Quellenangaben das Attribut ‘data’.
Statt ‘embed’ gibt man dann eine Textalternative zum Video an.
Wenn das wie hier nur ein ungültiges Element ist oder leer,
bedeutet das, daß das Video keinen Inhalt hat.

In (X)HTML ist sogar für die nachgefragte Funktionalität ein
spezielles Attribut vorgesehen, daß heißt ‘declare’.
Allerdings ist das bei den meisten browsern wohl fehlerhaft bis
gar nicht implementiert.

href="#" geht so nicht, hinter # muß ein gültiger
Fragmentidentifizierer folgen. Da der immer mit einem Buchstaben
beginnt, ist das so fehlerhaft.
href=“javascript:showvid(1);” ist auch schlecht, weil das weder
eine URI noch ein Fragmentidentifizierer ist und auch kein
allgemeingültiges Pseudoprotokoll wie etwa ‘data:’.
Für den Aufruf optionaler Skripte sieht (X)HTML spezielle
event-handler vor und nicht den Mißbrauch des href-Attributes.