1

クリックイベントで、非表示のdivのコンテンツを含むファンシーボックスを作成できるかどうかを知りたいだけです。このようにボタンが押されたとき:

<input type="button" class="headerButtonNormal" id="test" value="Contact information" onmouseover=this.className="headerButtonHoover"
           onmouseout=this.className="headerButtonNormal" onclick="showFormInformation()">

このjavascriptコードを実行し、どういうわけかファンシーボックスを生成します。

function showFormInformation()
{

}

そしてこれは私が見せたいdivです:

<div id="inline">
Test fancybox
</div>

インターネットで検索していると、fancyboxはこれのために作られていないように見えました...それはリンククリックのために作られています。別のフレームワークを使用する必要がありますか?

4

2 に答える 2

2

これはFancyboxの操舵室にあります!

ただ行う:

$.fancybox({
    content: $('#inline')
})

またはJFKが指摘したように:

$.fancybox({
    href: '#inline'
})

非表示のdivのcssパスは、ファンシーボックス内に入ると異なることに注意してください。

別のアプローチについては、この回答(https://stackoverflow.com/a/3819374/599075 )を確認してください。

于 2013-03-10T17:53:39.453 に答える
0

試す:

HTML:

<input type="button" class="headerButtonNormal" id="test" value="Contact information"
onmouseover=this.className="headerButtonHoover" onmouseout=this.className="headerButtonNormal">
<div id="inline">Test fancybox</div>

jQuery:

$("#test").on("click", function () {
    showFormInformation();

    return false;
});

function showFormInformation() {
    $.fancybox({
        content: $("#inline").html()
    });
}

ここでフィドル

すでにライブラリを使用しているため、jQueryを使用してバインドされるようにインラインイベントハンドラーを移動することをお勧めします。

于 2013-03-10T18:05:02.543 に答える