2015-03-08 2 views
1

Я хочу запустить функцию внутри объекта при щелчке. В методеобъекта я привязываю клик к «runBFS».Передать параметры для события javascript click

Я использую bind(this) для обхода, поэтому могу перейти в контексте объекта и не потерять его в окне.

var api = {}, 
api.init = function() { 
    document.getElementById("runBFS").addEventListener(
    "click", 
    this.traversal.bind(this), 
    false 
); 
} 

Мне нужно передать в логическое значение по щелчку (traverseNodesBool), но не знаю, как передать его в при использовании bind()

api.traversal = function (e, traverseNodesBool) { 

Как это сделать?

ответ

1

Передайте его как второй параметр для привязки.

document.getElementById("runBFS").addEventListener("click", this.traversal.bind(this, traverseNodesBool); 

api.traversal = function(yourBool, e) {} 
1

.bind(thisArg[, arg1[, arg2[, ...]]]), поэтому первый параметр контекст и остальное следует вашим другим параметрам, так что было бы:

this.traversal.bind(this, yourParamHere); 
Смежные вопросы