我已将Google FastButton脚本实施到网页中。以下内容:
Trying to implement Google's Fast Button
代码效果很好。我的问题是如何为多个按钮实现此功能。我有几个动态创建的按钮。我不想用自己的功能定义每个按钮。我可以将此脚本与另一个传递某个变量的函数一起使用。
例如,<button id="quick" onclick="someFunction(24);">button</button>
当前实施
new FastButton(document.getElementById('quick'), function() {
alert("hello");
});
<button onclick="onLayerClick(8)">8</button>
答案 0 :(得分:1)
这是一种方法:根据您粘贴的链接,FastButton原型接受一个函数作为其第二个参数(this.FastButton = function(element, handler)
)并将click事件传递给该函数。所以如果你做这样的事情:
HTML:
<button id="quick">24</button>
JS:
var myHandler = function(event) {
var el = event.target;
console.log(el.innerHTML);
}
new FastButton(document.getElementById('quick'), myHandler);
然后myHandler()
函数将有权访问点击事件发起的DOM元素(event.target
),这将是点击的任何按钮。因此,您可以访问该按钮的innerHTML,或者您可以在按钮上添加data-mynumber="24"
属性并使用el.getAttribute("data-mynumber")
代替el.innerHTML
...但是您要确定按钮是由你决定。