Feeds:
文章
留言

Archive for 六月 2nd, 2009

又是一個奇怪的錯誤,將包含 flash 的網頁放入 <iframe> 呈現,<iframe> 的放在 <table> 與沒有放在 <table>  的 Flash 呈現效果居然不同,看下圖可能比較知道我在說什麼(Flash 有版權,網址移除了)

正常

      <script type="text/JavaScript"><!–
        function test(){
            var player = document.getElementById(‘y’);
            player.style.display = “;
            player.src= ‘http://xxxxx/ch1/index.html’;
        }
    –></script>
</head>

<body >

  <iframe id=’y’ width="100%" height="600" src="" style=’display:none’></iframe>

    <input type="button" onclick="test()" value=’test’>
</body>

image

錯誤

      <script type="text/JavaScript"><!–
        function test(){
            var player = document.getElementById(‘y’);
            player.style.display = “;
            player.src= ‘http://xxxxxxx/ch1/index.html’;
        }
    –></script>
</head>

<body >

<table>
<tr><td>

  <iframe id=’y’ width="100%" height="600" src="" ></iframe>
  </td>
  </tr>
</table>

    <input type="button" onclick="test()" value=’test’>
</body>

image

UPDATE:
經過一番的測試結果出來, IE7 和 FlashPlayer10 都沒有錯,是設計 Flash 的程式有 Bug,我現在可以解釋為什麼放在 <iframe> 放在 <table> 中會有錯,首先是 Flash 在 <iframe> 的高度有變化時,可能事件處理不正確導致該出現的舞台就先跑出來,而上面範例的 <iframe> 有指定高度,所以會觸發 Flash 中的事件,所以就…….. 出包了~

Read Full Post »