我正在使用聚合物核心抽屉面板创建带有一些内容的单页面应用程序和用于导航的滑出式边栏。聚合物导航 - 如何在单击侧边栏链接时修改主要内容?
当点击<paper-item>
时,如何修改<div class="content">
的内容? PolymerJS最佳实践是什么?
例如: 如果点击“第一项”,我希望div阅读“嘿,这是第一项内容”。 如果点击“第二项”,我希望div阅读“嘿,这是第二项内容”。
这是我从polymer example小修改(纸项目,而不是核心项目和名称更改)得到了代码:
HTML:
<core-header-panel drawer>
<core-toolbar id="navheader'">
<span>Menu</span>
</core-toolbar>
<core-menu>
<paper-item label="First Item"></paper-item>
<paper-item label="Second Item"></paper-item>
</core-menu>
</core-header-panel>
<core-header-panel main>
<core-toolbar id="mainheader">
<paper-icon-button
id="navicon" icon="menu"></paper-icon-button>
<span flex>Title</span>
</core-toolbar>
<div class="content">
Hey, this is my main content
</div>
</core-header-panel>
JS:
document.addEventListener('polymer-ready', function() {
var navicon = document.getElementById('navicon');
var drawerPanel = document.getElementById('drawerPanel');
navicon.addEventListener('click', function() {
drawerPanel.togglePanel();
});
});
CSS:
body {
font-family: sans-serif;
}
core-header-panel {
background: white;
}
core-toolbar {
background-color: #03A9F4;
}
#navheader {
background-color: #56BA89;
}
.content {
padding: 20px;
}
/* drawer is always visible on a wide screen
so menu button isn't required */
core-drawer-panel:not([narrow]) #navicon {
display: none;
}
根据你的回答,我试着按照spa.html演示。我修改了一些东西,以便页面内容与page.name不同,但是如何使page.content成为外部html文件或聚合元素?我假设不是聚合物的方式。 http://jsbin.com/deqifinoqimi/1/由于导入了聚合物元素并没有真正的工作,但是ebidel的演示代码已被添加page.content修改。 – sbeleidy 2014-10-02 10:20:59
我已经更新了我的解释并提供了一个示例。我包含页面的方式是创建新元素。见上面 – sesteva 2014-10-03 13:03:18
你的例子虽然不使用flatiron导演。这不是聚合物做事的方式吗? – sbeleidy 2014-10-06 19:36:31