0

私は比較的単純なことをしようとしています。それは、Facnybox jQuery プラグインをトリガーして、ドキュメントの読み込み中にポップアップすることです。私は ASP を使用していますが、それは関係ありません。次のタグがあります。

<a id = "lnkGId" href = "" name = "lnkGId" runat = "server"  ></a>

JavaScript では、次のことを行います。

//check to ensure the link has an href

$(document).ready(function () {
    if($("a[id *= 'lnkGId']").length > 0 && $("a[id *= 'lnkGId']").attr("href") !="" ){
    console.log($("a[id *= 'lnkGId']").attr("href"));
    }
});

アンカーは、サーバー側で動的に設定された href を取得します。ID が少し壊れているため、*= セレクターを使用しています。この部分は機能します。アンカーに href があるときに上記を実行すると、適切な href がコンソールに記録されます。

ここでやりたいことは、ページが読み込まれ、アンカーの href に値があるときに Facncybox をトリガーすることだけです。上に投稿した if 条件内でさまざまな方法を試しました。

1

$("a[id *= 'lnkGId']").fancybox().trigger("click");

2

    var url = $("a[id *= 'lnkGId']").attr("href");
        $.fancybox({
            href: url, 
            modal: true,
            'fitToView'     : false,
            'width'         : '600px',
            'height'        : '560px',
            'autoSize'      : false,
            'closeClick'    : true              
        });

3

            $("a[id *= 'lnkGId']").fancybox({
                'fitToView'     : false,
                'width'         : '600px',
                'height'        : '560px',
                'autoSize'      : false,
                'closeClick'    : true

            });
$("a[id *= 'lnkGId']").trigger("click")

エラーは発生しません。console.log("complete"); を実行しています。上記のコードを適用して、どこかで壊れていないことを確認した後。すべてが動作状態にあるように見えますが、トリガーすることができません! ここで私ができることについて何か提案はありますか? アドバイスをいただければ幸いです。ありがとう!

4

3 に答える 3

1

href の URL は画像またはテキスト コンテンツですか? Web ページが返される場合は、次のような iframe を使用できます。

  $.fancybox('<iframe width="600" height="560" src="' + url + '"></iframe>',
    {
      'width': 600,
      'height': 560
    });
于 2012-10-02T17:19:43.407 に答える
1

Fancybox v1.3.4 を使用している場合は、http://fancybox.net/blog No.6 を確認してください

v2.x については、http ://fancyapps.com/fancybox/#useful No. 12を確認してください

さらに、最初の訪問時にのみ (ページがリロードされるたびにではなく) fancybox を起動する場合は、Cookie を使用できます。

ここでその方法を確認してください:https://stackoverflow.com/a/8305703/1055987

于 2012-10-02T17:11:20.493 に答える
0

回答ありがとうございます。

fancybox.iframe私の特定のケースの問題は、アンカータグにクラスがないことでした。追加すると、期待どおりに機能し始めました。

于 2012-10-05T15:59:14.483 に答える