2016-07-27 5 views
1

でボタンのために発射されていない私は、Lightbox2キャプションにボタンを追加しました:ClickイベントがLightbox2キャプション

<a href="link-to-img" data-lightbox="gallery" data-title=" 
    <div class='popup-button-container'> 
    <button class='order-button'>Order now</button> 
    </div>"><img src="img.jpg"> 
</a> 

ボタンがvsibleですが、私はonclickの機能をしようとするとき、それは動作しません。

$(document).on("click", ".order-button", function(e){ 
    e.preventDefault(); 
    console.log('Button clicked'); 
    $('#popup1').bPopup({ 
     speed: 850, 
     transition: 'slideDown', 
     modalColor: '#000000', 
     opacity: 0.5 
    }); 
    return false; 
}); 

同じコードは、ライトボックスの内容の外側にあるorder-buttonクラスのすべての要素で機能します。

+0

レンダリングされているイベントをバインドする必要がありますが、あなたのコンテンツがライトボックスiframe内に開設されますか?私はイエスと思う。だからこそjsはうまくいきません。 – SeeTheC

+0

あなたのhtmlにはエラーがあります。あなたもコードをデバッグしましたか? –

+0

@SeeTheC No.デベロッパーツールにiframeはありません。 – Julia

答えて

1
<a href="link-to-img" data-lightbox="gallery" data-title=" 
    <div class='popup-button-container'> 
    <button class='order-button'>Order now</button> 
    </div>"><img src="img.jpg"> 
</a> 

以下のコードはdata-titleです。

$(文書).on後にレンダリングされている

<div class='popup-button-container'> 
     <button class='order-button'>Order now</button> 
     </div> 

ライトボックスがレンダリングされたとき、あなたはすなわちタイトル

+1

感謝:D変更 '$(文書).on(」 ( "クリック"、 ".order-button"、function(e){')をクリックすると、" .order-button "、function(e){' – Julia