1

Shadowboxなどのライトボックスを Firefox 拡張機能内で使用したいと考えています。しかし、Shadowbox は次のような Javascript エラーを引き起こします。

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

IFRAME をサポートし、拡張機能内で正しく実行される (つまり、オーバーレイ XUL に追加される) ライトボックスはどれですか?

4

2 に答える 2

2

どのような機能をお探しですか?

コンテンツの上に「オーバーレイ」をポップアップできるということですか?オーバーレイの XUL 相当物はパネルです。HTML 名前空間を使用して、iframe を XUL に簡単に追加することもできます。お勧めしませんが、代わりに単純な 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>
于 2009-04-01T11:13:32.477 に答える