javascript点击事件传入参数
Pass in parameters for javascript click event
我想 运行 单击对象中的函数。在对象的 init
方法中,我将点击绑定到 "runBFS".
我使用 bind(this)
进行遍历,这样我就可以传入对象的上下文而不会将其丢失到 window。
var api = {},
api.init = function () {
document.getElementById("runBFS").addEventListener(
"click",
this.traversal.bind(this),
false
);
}
我需要在点击时传递一个布尔值 (traverseNodesBool
) 但不知道如何在使用 bind()
时传递它
api.traversal = function (e, traverseNodesBool) {
我该怎么做?
将其作为第二个参数传递给绑定。
document.getElementById("runBFS").addEventListener("click", this.traversal.bind(this, traverseNodesBool);
api.traversal = function(yourBool, e) {}
.bind(thisArg[, arg1[, arg2[, ...]]]) ,所以第一个参数是上下文,其余参数跟在您的其他参数之后,所以它将是:
this.traversal.bind(this, yourParamHere);
我想 运行 单击对象中的函数。在对象的 init
方法中,我将点击绑定到 "runBFS".
我使用 bind(this)
进行遍历,这样我就可以传入对象的上下文而不会将其丢失到 window。
var api = {},
api.init = function () {
document.getElementById("runBFS").addEventListener(
"click",
this.traversal.bind(this),
false
);
}
我需要在点击时传递一个布尔值 (traverseNodesBool
) 但不知道如何在使用 bind()
api.traversal = function (e, traverseNodesBool) {
我该怎么做?
将其作为第二个参数传递给绑定。
document.getElementById("runBFS").addEventListener("click", this.traversal.bind(this, traverseNodesBool);
api.traversal = function(yourBool, e) {}
.bind(thisArg[, arg1[, arg2[, ...]]]) ,所以第一个参数是上下文,其余参数跟在您的其他参数之后,所以它将是:
this.traversal.bind(this, yourParamHere);