我已经搜索过了,所有答案都一直在使用Dart,而我没有任何经验。

有没有办法用普通的ol'JS做到这一点?

this.$.classname仅返回null

编辑:这是我正在尝试做的一个例子

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


和脚本:

toggle: function () {
    this.$.collapse.toggle();
    console.log('toggled');
}


我正在尝试基于core-collapse制作手风琴,虽然this.$.collapse.toggle(); console.log不在以template为属性的repeat时可以工作,但是当它在,并以template作为属性。我已经尝试了repeatthis.$.collapse.toggle();,但都没有在重复的模板中找到它。

最佳答案

$不允许访问template if=template repeat=中的元素。请改用shadowRoot.querySelector('someselector')。 (不确定JavaScript中的语法到底如何,我只在Dart中使用它)。

关于javascript - 无法访问嵌套模板/重复模板中的元素?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25899035/

10-12 14:59