2010-04-22 68 views
2

我試圖顯示/隱藏基於按鈕的點擊Flash對象,但代碼是不工作
//to hide
$('object').css({visibility: 'hidden'});
//to show
$('object').css({visibility: 'visible'});
jQuery的Flash對象顯示隱藏

我不想使用.show()和.hide( ),因爲它們也將刪除Flash內容的區域。

回答

1
$('object') 
.wrap('<div class="fl-wrapper">') // Wrap the flash object in a div. 
.parent().css({'overflow':'hidden'}) // Set the wrapper to overflow hidden. 
.children().css({'margin-left':-99999}); // Set flash object to be out of box. 

然後切換回來,您可以:

$('object').css('margin-left',0); 

我只在Firefox中測試這一點。對於其他瀏覽器,您可能還需要將wrapper div的高度和寬度設置爲等於對象的高度和寬度。

0

從我所看到的情況來看,這是不可能的(特別是跨瀏覽器)。即使使用隱藏/顯示在IE6/7中也不起作用。我見過的唯一解決方案是從DOM中刪除對象/將其追加回DOM。

+0

如何從dom中刪除它? – 2011-04-29 15:46:50

+0

'$('object')。remove();'如果您使用的是jQuery,'會將它從DOM中移除。 – RussellUresti 2011-04-29 16:58:27