2017-03-24 6 views
0

私はGuidebox APIに接続されたムービールックアップアプリである学校プロジェクトを行っています。私は、マテリアライズCSSを使用して、タブシステムに情報を整理しようとしています。それらは動的に追加されるので、ドキュメンテーションはjavascriptで初期化するように指示します。これは、使用することを言う:Materialize各結果のタブを初期化する

 $(document).ready(function(){ 
     $('ul.tabs').tabs(); 
     }); 

しかしタブが提出要求までDOMの中に押し込まれていないドキュメントレディthaeyに存在していないので、私は推測する私のために動作しないこと。私は私のコードでは、単にいくつかの場所に

 $('ul.tabs').tabs(); 

を入れて、最良の結果は、それが最初の映画に取り組んでいたタブ区切り、各検索ではなく、後続の各戻り項目に戻されます。

既存のコードを動作させるためにどこかにプラグインできるかどうかに関するガイダンスを使用できます。

https://github.com/jasonboru/group_project1_guidebox.git

+0

$( 'ul.tabs')を呼び出します。あなたのforeachループで、新しい要素をDOMに追加した直後 – gaetanoM

+0

私は明らかに間違っていますが、私はそれが現在持っていた場所だと思っています。ただし、タブは最初に返された要素に対してのみ機能します。私はすぐにそれを持っています $( '。guidebox-search-results')。append(movieResult); – Jason

答えて

0

あなたはノードがDOMに挿入され、すべてのイベント、に結合し、その後、あなたが望むそれを行うことができます。

$(document).bind('DOMNodeInserted', function(e) { 
    var element = e.target; 
}); 
+0

申し訳ありませんこれは新しいもので、それを適用する方法がわかりません。私は要素を追加する関数の前でそれ自身を試してみましたが、うまくいきませんでした。その後、私はあなたの提案された関数に初期化を追加しようとしたが、私はエラーが発生しました。 Uncaught RangeError:最大呼び出しスタックサイズを超えました。 – Jason

+0

[DOMNodeInserted:Deprecated](https://developer.mozilla.org/en-US/docs/Web/Guide/Events/Mutation_events)これはopが経験している問題ではありません。 – gaetanoM

1

ダイナミックに作成されたDOM要素には、終了タグがありません。

別に

この、このファイルの資産/のJS/logic.js、次の次の2行があります。

$('.guidebox-search-results').append(movieResult); 
$('ul.tabs').tabs(); 

あなたがそれらを初期化し、新たなタブの要素を追加するたびにメナス、それは。 私が見ている間違いは、このようにして新しいタブだけでなくすべてのタブを初期化することです。そして、すでに古いものを初期化したので、前の2行をこの形式で書き直すことをお勧めします:

$('.guidebox-search-results').append(movieResult); 
$('.guidebox-search-results').find('ul.tabs').tabs(); 
+0

ありがとうございます。それ以来多くのことをしていますが、私はまだ同じ結果を得ています。あなたは両方の行を書き直すと言いましたが、トップラインは同じように見えますが、そこには何らかの変更があるはずですか? 閉じたアンカータグが1行で見つかったが、修正することは役に立たなかった。私は他のエラーのためにそれをくまなく梳き続けます。 お時間をいただきありがとうございます。 – Jason

+0

ようこそ。私は少しあなたを助けてうれしい – gaetanoM

+0

問題は私の最後に愚かであることが判明した。タブを書くとき、私は各タブに、各タブがマテリアライズ・ドキュメントのようにリンクするIDを付けました。私は、それぞれの結果に同じIDのセットが移入されるため、私はそれを考えなかった。 IDは一意であるため、最初の結果でのみ動作していました。その結果のJSONから一意の番号を追加するためにそれぞれのidを変更し、それは私に映画ごとに一意のIDを与え、問題を解決しました。 – Jason

関連する問題