-1

私は自分のli要素をループするforeachを持っています。この要素では、href 属性を #Sendbox に設定します。これは、div 要素を呼び出す ID です。しかし、ファンシーボックスは機能しません。

li-element から id-attribute を削除すると、期待どおりに機能しますが、id-attribute がそれらの内部の他のデータ値を取得する必要があるため、それは解決策ではありません。

これは私のコードです:
HTML + PHP:

<ul>
<?php foreach($arrTags as $key => $value) { ?>
<li><a href="#SendBox" class="TheBox" id="setTag_<?php echo $value['userID']; ?>" data-tagid="<?php echo $value['tagID']; ?>"><?php echo $value['userName']; ?></a></li>
<?php } ?>
</ul>  
<div id="SendBox" style="display:none"><h2>Box was sent..</h2></div>

これは私のファンシーボックスコードです:

$('[id^=setTag_]').click(function() {
$('.TheBox').click(function(){  
    $(".TheBox").fancybox({
        width   : 350,
        height  : 400,
    });
});
});

私はトレーニングを見つけようとしましたが、まだ運がありません.
多分誰かがその解決策を知っていますか?

4

1 に答える 1

0

setTag_*要素の ID ( ) またはクラス ( )を使用して fancybox を呼び出すことができるため、ロジックは意味がありませんTheBox。それ以外の場合は冗長であり、予期しない結果が生じる可能性があります。.click()さらに、手動モードで fancybox を呼び出す場合を除き、このメソッドは必要ありません。

これらのスクリプトのいずれかが機能します。

$(".TheBox").fancybox({
    width: 350,
    height: 400 //<-- No trial comma on the last option
});

... また

$('[id^=setTag_]').fancybox({
    width: 350,
    height: 400 //<-- No trial comma on the last option
});

...はい、fancybox はワイルドカード セレクターをサポートしています。JSFIDDLEを参照してください

于 2013-02-13T19:21:46.080 に答える