簡體   English   中英

在 JavaScript 中嵌入一個以字符串形式存儲的小型 .swf 文件

[英]Embedding a tiny .swf file stored as a string in JavaScript

有沒有辦法從字符串中嵌入 .swf 文件?

這是場景:

  1. 我有一個很小的 ​​.swf 文件,我想使用 JavaScript 動態加載到頁面中。 它小於1kb。
  2. 我可以將 .swf 文件的內容作為字符串存儲在 JavaScript 中,而不是與網絡進行往返
  3. 如果我在 JavaScript 中有這樣的字符串,有什么方法可以將字符串注入嵌入標簽,以便 .swf 文件正常加載?

這種技術適用於存儲圖標的小型 .svg 圖像並將它們直接嵌入到 .css 文件中。 這對 Flash 來說是可能的嗎? 或者是否有安全問題會阻止這種情況?

在現代瀏覽器中,您不能這樣做,因為它們不允許通過data: URI 在<object><embed>標簽中包含活動內容。

例如,這樣的事情是行不通的:

<html>
<body>
    <embed id="flash" width="200" height="200" type="application/x-shockwave-flash"></div>

    <script>
      var flashData = 'Q1dTBwAFAAB42oxUzU7bQBD+bK/tTQKBUsClQpV66IFDK9p7BQgB7SFO6nC3TLIEC//JcSk591BOHC2lUl+AN2ifoKeq175HTz2UznoTChISWNqf+ebbmdnZGZ9C+w3YP4FFDdv6JX01C/R1NJo2mis0067j+52gdxwMxPBFN4izSKyvv8Rls88k9ewHHuM/7A+i9CCIcBAMBXq5CAqxE2fFqJWehGI7CjP4p/BHiHtoBcUR8iDppzEOwyjyRK9ALylwGKVpjjTZSQqR7+ZBLOBnQS5I5Z/G6Xuy7I/UmuVpkRajTGAoRB9RmIhuMYoEDsQgTHbJKuL0ROynlYoWkfQVGoQJ/DxNC2x1u6Lo5Gm2GwWDIUodHKsLC190fDSkoK1W0HlTZsNeg57JwJ/p5TxsmSiu2zotTOeG90mD4ZQ1MIMzu09oWwnmRDBhP6EN0ZgjBSjBdMY6GtI1MzuVXDLaMvZGhvFNKy2SuMXMPTKnvBnKm+VQGMwib98JrexxuwqYezPSg/TbaCuSeSfJNqVtS7nQeM2bmK/br245aU8SoJCG15ZRW3zmnEuivoY/KLm0w+Rwy1lY4/HXjc/j8ZiAWVeearrykFQ3Zvbaim7KcTt9bkI3r9Hrcrjv2kpTd6eJrZL3AfIG2r1vUJHvkU3trmy26Umf/6UnQhUY+LxLguaoKGvnc5QhmFRO1ApGH79wVU8PbtQTFUodRqVhjC/QizRhX1wAU+ghQbaKgxmN69tprTC+eJPToHmqWiLVLMk3EVm1t9hZuocvdVwpGF/2nMn9HVUWxhqWqyZ7tHqVfmzSRXUizilAZ5ptSMXKawcbxh5tz56Sjdb+Vnfbb229dVEchcNr/52qn6s+lRl3Jn07ta9Xz2N4DjZJ/AcAAP//AwAfU9Bc';

      var flashObject = document.getElementById('flash');
      flashObject.src = 'data:application/x-shockwave-flash;base64,' + flashData;
    </script>
</body>
</html>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM