javascript - 处理 JQuery 事件目标时出现问题

标签 javascript jquery html events

我正在尝试为我的按钮创建一个通用处理程序, 但以下代码似乎无法识别事件目标, 而是吐出 target.toString() == 当前页面 URL?

html:

<a id="button1" href="#"></a>
<a id="button2" href="#"></a>

jquery/javascript:

function myHandler(e) {

   if (e.target == $("#button1")) 
      alert("Button 1 clicked");
   else if (e.target == $("#button2")) 
      alert("Button 2 clicked");
   else
      alert(e.target.toString());
}

$("#button1").click(myHandler);
$("#button2").click(myHandler);

最佳答案

function myHandler(e) {

   if (e.target.id == "button1")
      alert("Button 1 clicked");
   else if (e.target.id == "button2")
      alert("Button 2 clicked");
   else
      alert(e.target.toString());
}

$("#button1").click(myHandler);
$("#button2").click(myHandler);

您的代码无法工作,因为您正在将目标事件与 jQuery 对象进行比较

实例:http://jsfiddle.net/fcalderan/7b53z/

关于javascript - 处理 JQuery 事件目标时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4196616/

相关文章:

javascript - 使用 JavaScript 和 jQuery 生成 HTML - JavaScript 不执行?

jquery - 拖动和调整 div 与其他 div 重叠

python - 从我的网站表单向远程 ssh 服务器发送命令

html - CSS 圆和线 - 连接器

javascript - XMLHttpRequest 无法加载 URL。 Access-Control-Allow-Origin 不允许来源

javascript - 通过jQuery和页面加载函数加载CSS

javascript - 使用外部数据库在多个站点上更新 html 和 css

javascript - 使用 JQuery 和 HTML 在悬停时显示/隐藏多个元素

javascript - 检测 SVGAnimatedString 的类名

javascript - 模糊背景叠加图像