【发布时间】:2014-05-13 16:03:53
【问题描述】:
我想知道当我点击 另一个 元素时,我如何实例化 Polymer 元素。有没有办法从 dock-icon 实例化 window-base? (代码下来)。我虽然可以使用每个元素都有的构造函数,但我不知道它是如何工作的。如何将变量传递给该构造函数。
涉及的两个元素的代码:
<polymer-element name="dock-icon" attributes="name" on-click="{{click}}">
<template>
<link rel="stylesheet" href="dock-icon.css">
</template>
<script>
Polymer('dock-icon', {
name: "",
click: function (event, detail, sender) {
alert(this.name);
//instance <window-base> and pass name parameter
}
});
</script>
必须被实例化的聚合物元素
<polymer-element name="window-base" attributes="name height width left top">
<template>
<link rel="stylesheet" href="window-base.css">
<div id="box">
<header id="header"><h2>{{name}}</h2></header>
</div>
</template>
<script>
Polymer('window-base', {
name: "name",
//more stuff here
});
</script>
谢谢
【问题讨论】:
-
我终于找到了解决问题的方法,所以我将在这里发布我所做的事情,以防有人从中受益。我最终使用纯 javascript 方式来实例化一个元素。
codevar container = document.getElementsByTagName("window-container")[0]; var window=document.createElement("window-base"); window.setAttribute("name",this.name);容器.appendChild(窗口);code
标签: javascript polymer shadowbox web-component