【发布时间】:2016-04-18 04:21:41
【问题描述】:
我正在尝试创建一个自定义 Polymer 组件,该组件具有控制 iron-page(分页和页面指示器)的按钮。
目前,我已经创建了以下组件:
<dom-module id="my-carousel">
<template>
<style>
:host {
display: block;
}
iron-pages,
.pagination {
border: 1px solid black;
padding: 1em;
margin: 1em;
}
</style>
<iron-pages selected="0">
<div>Page 0</div>
<div>Page 1</div>
<div>Page 2</div>
<div>Page 3</div>
</iron-pages>
<div class="pagination">
<a href="#" onclick="this.parentNode.parentNode.querySelector('iron-pages').selectPrevious(); return false;">Previous</a>
<template is="dom-repeat" items="{{ironPages.items}}">
<a href="#" onclick="this.parentNode.parentNode.querySelector('iron-pages').select({{index}}); return false;">{{index}}</a>
</template>
<a href="#" onclick="this.parentNode.parentNode.querySelector('iron-pages').selectNext(); return false;">Next</a>
<br />
Page {{ironPages.selected}} of {{ironPages.items.length}}
</div>
</template>
<script>
Polymer({
is: "my-carousel",
ready: function() {
this.ironPages = this.$$('iron-pages');
}
});
</script>
</dom-module>
现场演示:http://jsbin.com/rasuqaduhe/edit?html,output
似乎唯一有效的是:
- 上一个/下一个链接
- 总页数指标
我的问题如下:
-
onclick属性看起来很难看。有没有合适的方法来做到这一点? - 有没有更好的方法来获取
iron-page的实例,或者this.$$('iron-pages')可以吗? - 为什么当前所选页面的编号不起作用?
- 为什么点击页码不起作用?
【问题讨论】:
标签: javascript html polymer custom-component web-component