2012-04-12 3 views
3

私の質問はタイトルにあります: dblclickイベントでjqueryファンシーボックス(http://www.fancybox.net/)を開くにはどうすればよいですか?dblclickイベントでファンシーボックスを開く方法

はあなたの応答を事前にありがとうございます:)

編集: を私はそれを試してみましたが、それは動作するようにと私は本当に理由を知らないようだしない:

$("#id").dblclick(function(){ 

    $("#id").fancybox({ 
     ... 
    }); 
    $("#id").click(); //Trigger click to open the fancy because dblclick doesn't open the fancy 
    $("#id").unbind('click.fb'); //unbind the click fancybox event 

}); 

アイデアましたdblclickがトリガーされたときにfancyボックスを処理し、クリックをトリガーしてfancyを開き、click.fbイベントのバインドを解除して、クリックが1回トリガーされたときにfancyboxを開くのを防ぎます。 残念ながら、unbind( 'click.fb')は機能していないようです。

+0

更新されたソリューションを試してください。 – undefined

答えて

3

は私はわかりません。

EDIT:jsfiddleの例です。

http://jsfiddle.net/abqTD/3/

+0

それは魅力のように動作します:) – guts

+0

問題はありません。作業コピーへのバイリンガルリンクを更新しました。 Fancyboxは最初のものにロードされていませんでした。 – rgin

0

jQuery .trigger()メソッドを試してください。この方法では、fancyboxを起動するためのボタンのような別の要素が必要です。

$('button').dblclick(function() { 
    $.fancybox({ 
     href: '#fancybox' 
     // other options here 
    }); 
}); 

何かをアンバインドする必要はありませんが:私は完全に質問を取得し、これをしようとした場合

$("button").dblclick(function() { 
    $("#fancybox").trigger('click'); 

}); 

$("#fancybox").click($(this).fancybox(){ 
     'transitionIn' : 'elastic', 
     'transitionOut' : 'elastic', 
     'speedIn'  : 600, 
     'speedOut'  : 200, 
     'overlayShow' : false 
    }); 
+0

これは、dblclickの後にfancyboxをバインドするが、clickイベントがトリガされているときにのみfancyboxを開くため、機能しません。このコードでは、私がダブルクリックすると、fancyboxが処理されます(クリックイベントだけが空想を開くことができるため、トリガーは発生しません)。そして、それぞれのクリックイベントでファンシーが開きます。 mクリア...) – guts

+0

うん、それは明らかだった。 – undefined

+0

このソリューションは大丈夫ですが、私は別のボタンを持ってはいけません:) – guts

0

これを行うにはfancyboxメソッドを使用します。私は似ていますが、クラスで何かをやろうとしている

1
$(".fbox").dblclick(function() { $.fancybox({ 
    'transitionIn' : 'elastic', 
    'transitionOut' : 'elastic', 
    'speedIn' : 600, 
    'speedOut' : 200, 
    'href': $(this).attr('href') 
    // 'overlayShow' : false 
    }); 
}); 

...<img src="path/someimage_thumb.jpg" href="path/someimage.jpg" class="fbox"> 

);

HTML

img src="images/sample_image.png" alt="Sample Title" class="fancybox" 

jQueryの

$(document).ready(function() { 
    $('.fancybox').dblclick(function() { 
     var imgSrc = $(this).attr('src'), 
      imgTitle = $(this).attr('alt'); 

     $.fancybox.open({href : imgSrc , title : imgTitle }); 
    }); 
}); 

希望はこれが...助けました。 jquery image pickerと統合しようとしています。

関連する問題