最後の2時間私の髪を引き抜いた後、まだ私は紛争を見つけることができませんでした。この問題のトラブルシューティングを手伝ってください。私はhttp://www.dynamicdrive.com/dynamicindex17/ajaxtabscontent/ajaxtabs_suppliment3.htmを使用して私のサイトのためのajaxタブを作成しており、またモーダルウィンドウにはhttp://defunkt.io/facebox/を使用しています。しかし、私がfaceboxリンクをAjaxタブを通してロードしようとしているときに、その内容がfaceboxにロードされていない。しかし、Ajaxタブの外にあるリンクについてはうまく動作します。何か案が?jQueryのfaceboxはDD Ajaxtabsで動作しません。
0
A
答えて
2
これは、DOMにロードする新しいコンテンツには、以前に設定されたイベントハンドラがアタッチされていないためです。
この場合、新しいコンテンツがajaxタブに読み込まれる前にfaceboxプラグインが初期化されています。したがって、本質的にfaceboxプラグインはこれらの新しいリンクが存在することを知らない。
答えは、新しいコンテンツが読み込まれた後にプラグインを再初期化することです。
だから、呼び出す必要があります: - 新しいAjaxのタブの内容は、DOMにロードされた後、
$('a[rel*=facebox]').facebox()
...再び。 ajaxタブのスクリプトを少し見渡すと、faceboxプラグインを(上記のように)簡単に再初期化することで、新しいコンテンツがajaxタブにロードされるたびに呼び出される関数にその行を追加することで簡単に解決できると思います。
また(とはるかに簡単に)あなたがあなたのサイトにlivequeryスクリプトが含まれていると(このコードを使用してjQueryのlivequery pluginに
を使用してプラグインfaceboxを初期化することができます: -
$('a[rel*=facebox]').livequery(function() {
$(this).facebox();
});
Livequeryますその後、自動的にそれらがDOMに追加されたときに新たにロードされたfaceboxのリンクを検出し、あなたのためにそれらにfaceboxプラグインを適用する
EDIT:。
これはまだ効果がありません(実際に私が使用していたときにはライブクエリとしてなぜ夢ではないのか分かりませんが)マウスを下ろすたびにfaceboxをアンバインドして再バインドしてください。新しいか古いかを示すANY faceboxリンク。
$('a[rel*=facebox]').live("mousedown", function() {
$(this).unbind('click'); //everytime you click unbind the past event handled.
$(this).facebox();
});
関連する問題
- 1. asp.netのfaceboxはポストバックできません
- 2. jQueryはiFrameで動作しません。
- 3. jqueryはdreamweaverで動作しません
- 4. Jquery cantはajaxコールの中で動作するfaceboxを取得します
- 5. jQuery .blurは動作しません
- 6. faceboxのオートコンプリートjQuery
- 7. jQuery next()live()で動作しません
- 8. jQueryがIEで動作しません
- 9. jqueryセレクタが[]で動作しません
- 10. JQuery Sortable Connectで動作しません
- 11. jqueryがDjangoで動作しません
- 12. JQueryのサイクルはFirefoxで動作しません。&クローム&サファリで動作します
- 13. JQueryはFirefoxで動作しますが、IEでは動作しません
- 14. jQueryはブラウザで動作しますが、アンドロイドエミュレータでは動作しません
- 15. jQuery load()はlocalhostで動作しますが、サーバでは動作しません
- 16. jQueryアニメーションはインターネットでは動作しませんが、ローカルで動作します
- 17. はChromeで動作しますが、Firefoxでは動作しません - jquery
- 18. jQueryはFFで動作していませんが、Chromeで動作します
- 19. jqueryはローカルrefrenceで動作しませんが、Google refrenceで動作します
- 20. jQueryはタブのように動作し、バリデータでは動作しません
- 21. jQueryのslideToggleはFirefoxでCOLSPANでは動作しませんか?
- 22. jquery-1.6ではjqueryスライダが動作しません!
- 23. jQuery検証プラグインはjQuery SimpleModalプラグインで動作しません。
- 24. コピースクリプトはローカルサーバでは動作しません。リモートサーバでは動作しません。
- 25. Jquery-uiはHerokuでは動作しませんが、localhostでは
- 26. JQueryのクリック操作は一度しか動作しません
- 27. SafariでJquery/Ajaxが動作しますが、Firefoxは動作しません
- 28. jquery load()はIE8ではまったく動作しません
- 29. ChromeのJquery Form.submit()はFirefoxでは動作しませんが、
- 30. JQuery MobileはEclipseのBlackberryプロジェクトでは動作しません
ライブクエリソリューションが時々動作しています。時々それは失敗する。私は最初の解決策をどこに追加すればよいか分かりますか? – user632347
私はちょっとハックしていますが、あなたのためにこのトリックを行うべきである第3の解決策で私のanwserを更新しました。 – gordyr