ウェブサイトのフッターにニュースレターの申し込みフォームがあります。サイドバーには、サインアップフォームのdivをコンテンツとして使用してfancyboxウィンドウをトリガーするリンクがあります。
予想どおり、これによりフォームがフッターから消え、ライトボックスにポップアップ表示されます。
ライトボックスを閉じると、元の状態に戻ります。非常に厄介な例外が1つあります。それは、追加の。でラップされていdiv
ます。ライトボックスウィンドウを開閉する回数が増えるほど、ライトボックスウィンドウdiv
が蓄積されます。
さて、私は通常、fancyboxが非表示のdiv(フォームの2番目のコピー)からコンテンツを取得するだけですが、WordPress(mailchimp)のプラグインによって生成され、#idまたはフォーム名を変更することはできません。
したがって、これはバグまたはfancyboxの機能のいずれかです。私は99.9%、私が「間違った」ことをしているのではないと確信しています。ラップされたdivを削除する方法はありますか?#email_signupからdivを削除するjqueryスニペットを入れてみることができるとonClosed
思います...しかし、おそらく明日までそれを行うのを待ちます。
関連するコード:
js
jQuery("#signMeUpBox a").fancybox({width:250});
html
<a href="#email_signup"><img src="...." /></a>
いくつかのファンシーボックスを開いたり閉じたりした後のフッターコードは次のとおりです。
<div style="width:auto;height:auto;overflow: auto;position:relative;">
<div style="width:auto;height:auto;overflow: auto;position:relative;">
<div id="email_signup" style="">
<h1 style="">email signup</h1>
<div id="mc_signup" style="">
<form method="post" action="#mc_signup" id="mc_signup_form" style="">
<!-- ... -->
</form><!-- /mc_signup_form -->
</div><!-- /mc_signup_container -->
</div>
</div>
</div>
編集
状況を説明するためにjsfiddleをまとめました。 http://jsfiddle.net/UD9P9/