首页 > 解决方案 > 如何将按钮单击事件传递给回调函数

问题描述

小提琴:http: //jsfiddle.net/cmw0s2rk/

function HandleTopNavClick($elem, pretext = "", replace = false, e) {
  debugger;
  e.preventDefault();
  var href = $elem.href;
}

$("ul.check-it li a").on("click", HandleTopNavClick($(this), "clickhere_", true, event));

知道为什么event没有延续到该功能吗?

标签: javascriptjqueryevent-handling

解决方案


您正在同步调用 handleTopNavClick,然后将其结果传递给 .on。相反,您想创建一个函数并将其传递给 .on,稍后将与事件一起回调该函数。

$("ul.check-it li a").on("click", function(event) {
  HandleTopNavClick($(this), "clickhere_", true, event)
});

推荐阅读