在JavaScript点击事件中创建的聚合物纸按钮未启动
Polymer Paper-Button created in JavaScript click event not firing
我在JavaScript代码中创建并分配给HTML中的div的聚合纸按钮遇到问题。我已经在谷歌上搜索了一段时间,但现在却两手空空。我只是想在它被点击时能够做一些事情,但我不知道如何为它的点击属性分配一个函数。
提前谢谢。
(function(document) {
'use strict';
var app = document.querySelector('#app');
window.addEventListener('WebComponentsReady', function() {
var mainCollapse = document.getElementById('collapse');
/*--------------Contact Details Collapseable--------------*/
var contactDetailsDiv = document.getElementById('contactDetails');
var gitBtn = document.createElement('paper-button');
gitBtn.textContent = 'GitHub Profile.';
gitBtn.raised = true;
gitBtn.id = 'gitButton';
gitBtn.link = 'https://github.com/SKHolmes';
gitBtn.onClick = function(){
console.log('here'); }
var githubDiv = document.getElementById('githubDiv');
githubDiv.appendChild(gitBtn);
app.displayContactDetails = function(){
var contactDetails = contactDetailsDiv.innerHTML;
mainCollapse.innerHTML = contactDetails;
}
//Button Listeners
document.getElementById("contact-button").addEventListener("click", function(){
app.displayContactDetails();
mainCollapse.toggle();
});
document.getElementById('gitButton').addEventListener('click', function(){
console.log('here');
});
});
})(document);
好吧,现在有点可笑了,我几乎用尽一切办法让这个按钮在控制台上打印一些东西。包括所有这些。
app.listen(gitBtn, 'tap', 'test');
app.listen(gitBtn, 'click', 'test');
gitBtn.addEventListener('tap', function(){
alert('here');
});
gitBtn.onclick = 'test';
gitBtn.click = function(){ console.log('here'); }
app.test = function(){
console.log('here');
}
gitBtn.setAttribute('on-click', 'app.test');
Polymer文档描述了如何强制添加事件侦听器:
使用自动节点查找和方便的方法
listen
和CCD_ 2。this.listen(this.$.myButton, 'tap', 'onTap'); this.unlisten(this.$.myButton, 'tap', 'onTap');
侦听器回调是在
this
设置为元素实例的情况下调用的。如果强制添加侦听器,则需要将其删除强制性地。这通常在
attached
和detached
中完成回调。如果使用侦听器对象或带注释的事件监听器,Polymer会自动添加和删除事件监听器。
因此,您可以像这样绑定onClick
函数:
gitBtn.attached = function() {
this.listen(this, 'tap', 'onClick');
};
gitBtn.detached = function() {
this.unlisten(this, 'tap', 'onClick');
};
jsbin
(function(document) {
'use strict';
window.addEventListener('WebComponentsReady', function() {
var gitBtn = document.createElement('paper-button');
gitBtn.textContent = 'GitHub Profile.';
gitBtn.raised = true;
gitBtn.id = 'gitButton';
gitBtn.link = 'https://github.com/SKHolmes';
gitBtn.onClick = function() {
console.log('gitBtn.onClick()');
log.innerHTML += 'gitBtn.onClick()<br>';
};
gitBtn.attached = function() {
this.listen(this, 'tap', 'onClick');
};
gitBtn.detached = function() {
this.unlisten(this, 'tap', 'onClick');
};
var githubDiv = document.getElementById('githubDiv');
githubDiv.appendChild(gitBtn);
});
})(document);
<!DOCTYPE html>
<html>
<head>
<base href="https://polygit.org/polymer+:master/components/">
<script src="webcomponentsjs/webcomponents-lite.min.js"></script>
<link rel="import" href="paper-button/paper-button.html">
</head>
<body>
<div id="githubDiv"></div>
<div id="log"></div>
</body>
</html>
相关文章:
- 镀铬延长件内部的聚合物纸按钮不起作用
- 除“;改变“;用于聚合物单选按钮
- 在JavaScript点击事件中创建的聚合物纸按钮未启动
- 聚合物:纸张操作对话框打开时,纸张菜单按钮不会关闭
- 按下一组聚合物纸张切换按钮之一时触发事件
- 尝试使用聚合物纸张切换按钮
- 聚合物纸张切换按钮
- 如何将纸张切换按钮绑定到聚合物中的布尔值
- 在聚合物1.0中,使用纸质按钮时无法访问数据属性
- 聚合物:在纸张按钮按下“ok”后,在纸张对话框内获得纸张输入的值
- 点击聚合物v1.0输入验证按钮
- 聚合物1.0如何获得点击纸张按钮的id
- 如何从一组颜色动态地改变聚合物1.0纸按钮的颜色
- 加载更多的内容上的按钮点击在聚合物
- 聚合物纸图标按钮不开火点击
- 聚合物1.0纸单选按钮不工作在流星
- 聚合物中凸起的纸张按钮上不显示波纹效果和阴影
- 单击事件未在聚合物纸图标按钮中触发
- 聚合物在点击时更改纸质图标按钮中的图标
- 聚合物 v1.2.4 - 在背景元素的情况下,能够按 Tab/Shift-Tab 键切换到背景按钮