gpt4 book ai didi

jquery - 如何使用 jQuery 重新分配 Javascript 事件?

转载 作者:行者123 更新时间:2023-12-01 03:40:12 25 4
gpt4 key购买 nike

当我在 js 中记录点击处理程序时,(var clickHandler = button.onclick;) 它会按预期给出以下内容:

clickHandler:function () {
alert("onclick - original onclick handler");
}

但是,当我记录 jQuery 单击处理程序 (var clickHandler = jQuery('#button').click;) 时,我得到:

  clickHandler:function (a,c){c==null&&(c=a,a=null);return arguments.length>0?this.bind(b,a,c):this.trigger(b)}

为什么有区别?如何获取该函数的句柄,以便我可以将其重新分配给另一个事件,例如。鼠标按下?

(我需要重新分配一个我无法控制的现有 js 事件,因此它还没有使用 jQuery 添加)。

    <input type="text" name="name_input" id="name_input" />
<a href="#" id="button">Click</a>
<script>
var input = document.getElementById("name_input");
var button = document.getElementById("button");
input.onchange = function(event) {
alert("Change");
};

//reassign onclick to onmousedown

button.onclick = function() {
alert("onclick - original onclick handler");
};

//reassign onmousedown handler
var clickHandler = button.onclick;
// var clickHandler = jQuery('#button').click;
console.log('clickHandler:' + clickHandler);

button.onmousedown = clickHandler;
</script>

最佳答案

我想你想要这个:

var clickHandler = jQuery('#button')[0].click;

jQuery([selector]) 返回一个数组。

关于jquery - 如何使用 jQuery 重新分配 Javascript 事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22600140/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com