2014-09-19 49 views
0

對於某種特定問題感到抱歉。我正在嘗試使用core-collapse和重複模板製作手風琴,並面臨一些困難。這是我的手風琴重複模板:聚合物 - 如何獲得重複模板中的下一個相應元素?

<template repeat="{{item, i in items}}"> 
    <div class="accordheader" on-click="{{toggle}}">{{item}}</div> 
    <template repeat="{{content, i in contents}}"> 
     <core-collapse class="collapse"> 
      <p>{{content}}</p> 
     </core-collapse> 
    </template> 
</template> 

,這裏是我的腳本:

toggle: function() { 
    //get whichever 'accordheader' clicked on 
    var collapseGetting = this.shadowRoot.querySelector('.accordheader'); 
    console.log(collapseGetting); 

    //find the core-collapse that is directly underneath it 
    var collapse = $(collapseGetting).next('core-collapse'); 
    console.log(collapse); 

    //toggle that particular core-collapse 
    collapse.toggle(); 
    console.log('toggled'); 
} 

現在我的切換完全打破,實際上不會切換任何東西。我仍然收到'切換'控制檯日誌,但沒有發生任何事情。我不確定是否正確定位下一個核心崩潰,甚至無法正確嵌套重複模板。基本上我有2個陣列,[items][contents]我正在檢索我的項目爲每個.accordheader和我的內容爲每個core-collapse

任何見解?我覺得這是一種格式或模板的問題..

回答

0

具有這裏的文檔快速瀏覽一下: http://www.w3schools.com/jquery/traversing_next.asp (見「親自嘗試」示例「)

我相信你當前的代碼正在獲取下一個'.accordheader'元素,而不是下一個'核心崩潰'。

如果我已經解釋的鏈接正確,那麼它應該是這個樣子:

$('core-collapse').Next(console.log(collapse);); 

之前從未使用過「下一步」,但有我的5美分。