When I log the click handler in js, (var clickHandler = button.onclick;) it gives the following as expected:
clickHandler:function () {
alert("onclick - original onclick handler");
}
However, when I log the jQuery click handler (var clickHandler = jQuery('#button').click;), I get:
clickHandler:function (a,c){c==null&&(c=a,a=null);return arguments.length>0?this.bind(b,a,c):this.trigger(b)}
Why the difference? How do I get a handle on the function so I can reassign it to another event, eg. onmousedown?
(I need to reassign an existing js event that I have no control over, so it hasn't been added with 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>