Javascript 传递函数以单击事件jQuery
我只是想知道我需要做什么才能将Javascript 传递函数以单击事件jQuery,javascript,jquery,Javascript,Jquery,我只是想知道我需要做什么才能将clickAssistanceToggle函数传递给我的jQuery点击事件,我已经查看了这里的一些答案,但找不到简单的解决方案 到目前为止,我有以下代码: function clickAssistanceToggle() { $('.car-hub-header-help, #assistance-overlay, .assistance-close-btn').click(function(){ $('#new-car-hub, #new
clickAssistanceToggle
函数传递给我的jQuery点击事件,我已经查看了这里的一些答案,但找不到简单的解决方案
到目前为止,我有以下代码:
function clickAssistanceToggle() {
$('.car-hub-header-help, #assistance-overlay, .assistance-close-btn').click(function(){
$('#new-car-hub, #new-car-offer').toggleClass('assistance-active');
$('#pulman-assistance').toggleClass('pulman-assistance-active').css("top", fixedPositionCalculator);
$('#assistance-overlay').toggleClass('assistance-overlay-active');
$('#new-car').toggleClass('assistance-active-body');
$('#new-car-offer-cta').toggleClass('assistance-active-cta');
});
};
$('.new-car-general-enquiry-btn').click(function(){
clickAssistanceToggle();
});
正如您所看到的,函数不会像这样运行,因为它没有作为参数传递,我尝试过这样传递函数:
$('.new-car-general-enquiry-btn').click(function(clickAssistanceToggle){
clickAssistanceToggle();
});
但是这似乎不起作用,你知道我如何将该函数传递给click事件吗?谢谢你可以这样打电话
$('.new-car-general-enquiry-btn').click(clickAssistanceToggle);
或
还有一种可能性是,.new car general QueryBTN元素在绑定事件时未呈现。如果是这样,您需要将代码包装在dom就绪事件中
$(document).ready(function() {
$('.new-car-general-enquiry-btn').click(function() {
clickAssistanceToggle();
});
});
你可以这样打电话
$('.new-car-general-enquiry-btn').click(clickAssistanceToggle);
或
还有一种可能性是,.new car general QueryBTN元素在绑定事件时未呈现。如果是这样,您需要将代码包装在dom就绪事件中
$(document).ready(function() {
$('.new-car-general-enquiry-btn').click(function() {
clickAssistanceToggle();
});
});
而不是
$('.new-car-general-enquiry-btn').click(function(clickAssistanceToggle){
clickAssistanceToggle();
});
你需要使用
$('.new-car-general-enquiry-btn').click(clickAssistanceToggle);
基本上,当在.new car general inquiry btn
元素上执行单击时,您需要传递要执行的函数。而不是
$('.new-car-general-enquiry-btn').click(function(clickAssistanceToggle){
clickAssistanceToggle();
});
你需要使用
$('.new-car-general-enquiry-btn').click(clickAssistanceToggle);
基本上,当在
.new car general inquiry btn
元素上执行单击时,您需要传递要执行的函数。显然,您的clickAssistanceToggle函数本身就是将一个单击处理程序分配给一组其他元素。你能解释一下目的吗?你确定你的代码不起作用吗?第一个块中的代码没有明显错误,唯一的问题是它没有立即可见的效果。实际上,当用户单击.new car general enquiry btn
时,将调用附加函数,并将另一个单击处理程序附加到其他元素。toggleClass方法仅在用户单击以下元素之一时执行:.car hub header help、#assistance overlay、.assistance close btn
。也就是说,第二个块代码当然是错误的。谢谢你的完全正确,我想我有点困惑,认为这是因为函数没有被调用。我没有意识到我在调用一个函数,该函数包含一个click函数中的click事件。。。为什么要将指向错误方向的答案标记为正确答案?显然,clickAssistanceToggle函数本身正在为一组其他元素分配一个单击处理程序。你能解释一下目的吗?你确定你的代码不起作用吗?第一个块中的代码没有明显错误,唯一的问题是它没有立即可见的效果。实际上,当用户单击.new car general enquiry btn
时,将调用附加函数,并将另一个单击处理程序附加到其他元素。toggleClass方法仅在用户单击以下元素之一时执行:.car hub header help、#assistance overlay、.assistance close btn
。也就是说,第二个块代码当然是错误的。谢谢你的完全正确,我想我有点困惑,认为这是因为函数没有被调用。我没有意识到我在调用一个函数,该函数包含一个click函数中的click事件。。。为什么你把一个指向错误方向的答案标为正确答案?