0

Fancybox 内でカスタム チェック ボックスを使用しようとしています。それらは表示されますが、機能しません (チェックできません)。

$(document).ready(function() {

    $("#fnc").live("click", function(){
        $.fancybox($("#hidediv").html(),{
          'speedIn'         : 600, 
          'speedOut'            : 200, 
          'overlayShow'     : false,
          'autoDimensions'  : false,
          'width'           : 620,
          'height'          : 'auto',
          'overlayShow'       : true,
          'overlayOpacity'    : 0.8,
          'overlayColor'      : '#ccc'

          });
$('.defaultP input').ezMark();
$('.customP input[type="checkbox"]').ezMark({checkboxCls: 'ez-checkbox-green', checkedCls: 'ez-checked-green'});
        }); 
});

Fancybox がロードされたら、jQuery を再度起動する方法はありますか?

4

1 に答える 1

0
My question is how to have custom checkboxes within Fancybox

その質問に対する答えは「はい」です。fancybox 内にカスタム チェックボックスを設定することは可能です (ハウツー? 読み続けてください ;)

.live()「fancybox から複数の fancybox を開く」の使用に関しては、.on()代わりに使用する方がよいでしょう (ただし、jQuery 1.7 以降が必要です)。私は.live()(jQuery 1.7の時点ですでに非推奨になっている)の使用を推測.click()し、DOMに動的に追加された要素をfancyboxで開くことを意図していました。

「使用しない限り、fancybox から Fancybox を開くことはできません.live()は必ずしも真ではありませんが、fancybox (v1.3.4) で現在の要素や動的に追加された要素を開くために、このデモでは.on()通常の fancybox$(".selector").fancybox();スクリプト (いいえ。click()

これは、トリックを行う必要があります

$(document).ready(function() {
 $("body").on("focusin", function(){
  $("a.fancybox").fancybox({
   'speedIn': 600, 
   'speedOut': 200, 
   'overlayShow': false,
   'autoDimensions': false,
   'width': 620,
   'height': 'auto',
   'overlayShow': true,
   'overlayOpacity': 0.8,
   'overlayColor': '#ccc',
   'onCleanup': function() {
    var myContent = this.href;
    $(myContent).unwrap();
   }
  }); // fancybox
 }); // on
 $('.defaultP input').ezMark();
 $('.customP input[type="checkbox"]').ezMark({checkboxCls: 'ez-checkbox-green', checkedCls: 'ez-checked-green'});
}); // ready

私を信じないでください。ここで動作することを確認してください。そのデモでは、fancybox 内から別の fancybox を開くこともできます。

イベントfocusinとして使用する方法の詳細については、ファンシーボックスを動的に追加された要素にバインドする方法を確認してください。デモも含まれています。.on()

onCleanupまた、jQuery.unwrap()メソッドにオプションを含めていることにも注意してください。「インライン」コンテンツを使用しているため、このバグは修正されています

于 2012-06-16T19:21:55.413 に答える