2009-03-09 20 views
1

Firefox拡張の中にShadowboxなどのライトボックスを使用したいと思います。しかし、シャドーは、このようなJavascriptのエラーが発生します。Firefox拡張機能ではどのようなライトボックスが機能しますか?

Error: document.write is not a function 
Source file: chrome://iframe/content/shadowbox/shadowbox.js 
Line: 1557 

のIFRAMEをサポートし、拡張内で正常に実行されるライトボックス(すなわちオーバーレイXULに追加されますか。)?

+0

これは、私たちも、私がパネルにIFRAMEを入れしようとしていた –

答えて

0

多分、おそらくありません。ライトボックスは、XULではなく(X)HTMLで動作するようになっています。

2

お探しの機能はどれですか?

「オーバーレイ」をコンテンツにポップアップ表示できますか?オーバーレイのXUL等価物はパネルです。また、HTML名前空間を使用して、XULにiframeを簡単に追加することもできます。私はそれをお勧めしませんが、代わりにいくつかの単純なjavascriptを使用してパネルの内容を変更します。

また、スタックで試すこともできます。ここで小さな例です:

<?xml version="1.0"?> 
<!DOCTYPE window PUBLIC "-//MOZILLA//DTD XUL V1.0//EN" "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> 
<?xml-stylesheet href="chrome://global/skin/global.css" type="text/css"?> 
<window id="test" 
     title="test" 
     xmlns:html="http://www.w3.org/1999/xhtml" 
     xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" 
     xmlns:svg="http://www.w3.org/2000/svg"> 
    <stack> 
     <hbox> 
      <vbox> 
       <hbox> 
        <label value="123"/> 
       </hbox> 
       <hbox> 
        <label value="456"/> 
       </hbox> 
       <html:iframe style="width: 800px; height: 400px;" src="http://www.google.com"/> 
      </vbox> 
     </hbox> 
     <vbox style="position: absolute;opacity: 0.5;"> 
      <html:iframe style="position: absolute; top: 100px; left: 100px; width: 500px;" src="http://www.google.com"/> 
     </vbox> 
    </stack> 
</window> 
+0

:)何を言ってるのかわからないにもかかわらず、私を助けた答えに影響を与えました。しかし、透明性がうまくいかないことがわかった。だから、私はIFRAMEを1つのパネル(不透明)に置き、別の透明なパネル上に境界画像を持っていると思った。しかし、私はパネルが常に影を持っていることを発見しました。 XULで作業していた場合、ライトボックスは代わりに見えました。 – Mat

+0

まだパネルは少し異なり、透明性は必ずしも信頼できるものではありません。彼らはメニューなどを表現する方法です あなたができることはたぶんスタックを使って、そのiframeの中に通常のhtmlとして "ポップアップ"を置くことです。しかし、それはうまくいくだろうが、試してみる価値がある。 – lithorus

+0

小さなテストをしただけでうまくいくようです。あなたのソースを表示するために私の答えを更新します。 – lithorus

関連する問題