Yanıtlar:
SWF'yi bir HTML sayfasına gömmek için en iyi yaklaşım SWFObject kullanmaktır .
Flash içeriğini gömmek için kullanımı kolay ve standartlara uygun bir yöntem olan basit bir açık kaynaklı JavaScript kütüphanesidir.
Ayrıca Flash player sürüm tespiti sunar. Kullanıcının Flash sürümü gerekli değilse veya JavaScript devre dışı bırakılmışsa, alternatif bir içerik görür. Bu kitaplığı, bir Flash player yükseltmesini tetiklemek için de kullanabilirsiniz. Kullanıcı yeni sürüme geçtikten sonra tekrar sayfaya yönlendirilir.
Belgelerden bir örnek:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<title>SWFObject dynamic embed - step 3</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<script type="text/javascript" src="swfobject.js"></script>
<script type="text/javascript">
swfobject.embedSWF("myContent.swf", "myContent", "300", "120", "9.0.0");
</script>
</head>
<body>
<div id="myContent">
<p>Alternative content</p>
</div>
</body>
</html>
Bu SWFObject HTML ve JavaScript olduğu ile iyi bir araç boyunca kullanmak jeneratör . Temelde SWFObject kullanarak Flash'ı gömmek için ihtiyacınız olan HTML ve JavaScript'i oluşturur. Parametrelerinizi girmeniz için çok basit bir kullanıcı arayüzü ile birlikte gelir.
Şiddetle tavsiye edilir ve kullanımı çok basittir.
var el = document.getElementById("my-target-element"); swfobject.embedSWF("myContent.swf", el, 300, 120, 10);
<object width="100" height="100">
<param name="movie" value="file.swf">
<embed src="file.swf" width="100" height="100">
</embed>
</object>
Bu, kök ortamdan uygulama için uygundur.
<object type="application/x-shockwave-flash" data="/dir/application.swf"
id="applicationID" style="margin:0 10px;width:auto;height:auto;">
<param name="movie" value="/dir/application.swf" />
<param name="wmode" value="transparent" /> <!-- Or opaque, etc. -->
<!-- ↓ Required paramter or not, depends on application -->
<param name="FlashVars" value="" />
<param name="quality" value="high" />
<param name="menu" value="false" />
</object>
.Swf dosyasına bağlı olarak ek parametreler eklenmeli / eklenmelidir. Gömme yok , sadece nesne ve parametreler içinde, bu yüzden her yerde geçerli, çalışıyor ve kullanılabilir durumda kalıyor, hangisinin önemli olduğu önemli değil! :)
<object type="application/x-shockwave-flash" data="http://www.youtube.com/v/VhtIydTmOVU&hl=en&fs=1&color1=0xe1600f&color2=0xfebd01"
style="width:640px;height:480px;margin:10px 36px;">
<param name="movie" value="http://www.youtube.com/v/VhtIydTmOVU&hl=en&fs=1&color1=0xe1600f&color2=0xfebd01" />
<param name="allowfullscreen" value="true" />
<param name="allowscriptaccess" value="always" />
<param name="wmode" value="opaque" />
<param name="quality" value="high" />
<param name="menu" value="false" />
</object>
Ben http://wiltgen.net/objecty/ kullanın , medya içeriği gömmek ve IE "etkinleştirmek için tıklayın" sorunu önlemek yardımcı olur.
Bu işe yarayacak, eminim!
<embed src="application.swf" quality="high" pluginspage="http://www.macromedia.com/go/getfashplayer" type="application/x-shockwave-flash" width="690" height="430">
'En iyi' yol nedir? 'En verimli', 'en hızlı renderleme' gibi kelimeler daha spesifiktir. Her neyse, bana çoğu zaman yardımcı olacak alternatif bir cevap öneriyorum ('en iyi' olup olmadığı önemli değil).
Alternatif cevap: Bir iframe kullanın.
Yani, SWF dosyasını sunucuda barındırın. SWF dosyasını kök veya public_html klasörüne koyarsanız, SWF dosyası şu konumda bulunur www.YourDomain.com/YourFlashFile.swf
.
Ardından, index.html dosyasında veya herhangi bir yerde, yukarıdaki konumu iframe'inize bağlayın; iframe'inizi nereye koyarsanız yerleştirin, içeriğinizin çevresinde görüntülenir. Buraya bir iframe koyabilirseniz, buraya bir SWF dosyası koyabilirsiniz. İframe boyutlarını SWF dosyanızla aynı yapın. Aşağıdaki örnekte, SWF dosyası 500 x 500'dür.
Sahte kod:
<iframe src="//www.YourDomain.com/YourFlashFile.swf" width="500" height="500"></iframe>
Yukarıdaki HTML kodu satırı SWF dosyanızı gömecektir. Başka bir karmaşaya gerek yok. Artıları: W3C uyumlu, sayfa tasarımı dostu, hız sorunu yok, minimalist yaklaşım.
Eksileri: Bir tarayıcıda başlatıldığında SWF dosyanızın etrafında beyaz boşluk.
Bu alternatif bir cevap. Bunun 'en iyi' yanıt olup olmadığı projenize bağlıdır.
//www...
kullanmanız //
anlamına gelir HTTPS veya HTTP üzerinde aynı bağlantı türünü kullanarak çalışır
Bunun eski bir soru olduğunu biliyorum. Ama bu cevap şimdiki zaman için iyi olacak.
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>histo2</title>
<style type="text/css" media="screen">
html, body { height:100%; background-color: #ffff99;}
body { margin:0; padding:0; overflow:hidden; }
#flashContent { width:100%; height:100%; }
</style>
</head>
<body>
<div id="flashContent">
<object type="application/x-shockwave-flash" data="histo2.swf" width="822" height="550" id="histo2" style="float: none; vertical-align:middle">
<param name="movie" value="histo2.swf" />
<param name="quality" value="high" />
<param name="bgcolor" value="#ffff99" />
<param name="play" value="true" />
<param name="loop" value="true" />
<param name="wmode" value="window" />
<param name="scale" value="showall" />
<param name="menu" value="true" />
<param name="devicefont" value="false" />
<param name="salign" value="" />
<param name="allowScriptAccess" value="sameDomain" />
<a href="http://www.adobe.com/go/getflash">
<img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" />
</a>
</object>
</div>
</body>
</html>
Thi, IE, Edge, Firefox, Safari ve Chrome'da çalışır.
<object type="application/x-shockwave-flash" data="movie.swf" width="720" height="480">
<param name="movie" value="movie.swf" />
<param name="quality" value="high" />
<param name="bgcolor" value="#000000" />
<param name="play" value="true" />
<param name="loop" value="true" />
<param name="wmode" value="window" />
<param name="scale" value="showall" />
<param name="menu" value="true" />
<param name="devicefont" value="false" />
<param name="salign" value="" />
<param name="allowScriptAccess" value="sameDomain" />
<a href="http://www.adobe.com/go/getflash">
<img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" />
</a>
</object>
Bu benim için çalıştı:
<a target="_blank" href="{{ entity.link }}">
<object type="application/x-shockwave-flash" data="{{ entity.file.path }}?clickTAG={{ entity.link }}" width="120" height="600" style="visibility: visible;">
<param name="quality" value="high">
<param name="play" value="true">
<param name="LOOP" value="false">
<param name="wmode" value="transparent">
<param name="allowScriptAccess" value="true">
</object>
</a>
<embed>
Elemanı kullanın :
<embed src="file.swf" width="854" height="480"></embed>
Aşağıdaki gibi bir bilginiz varsa JavaScript'i kullanabilirsiniz, örneğin:
swfobject.embedSWF("filename.swf", "Title", "width", "height", "9.0.0");
- 9.0.0 flash sürümüdür.
Veya <object>
HTML5 etiketini kullanabilirsiniz .