Jquery 如何从另一个click event函数中的click event调用函数?
我有两个函数,在单击元素时触发。但是,我想使用应该通过click事件在另一个函数中执行的第一个函数。我还是个新手 我已经尝试调用该函数,并在希望执行该函数的另一个函数中声明函数名。是否因为第一个函数只能在其元素上的vie click事件中触发而无法工作?我还将click事件嵌套在一个函数上,但它没有很好地工作Jquery 如何从另一个click event函数中的click event调用函数?,jquery,Jquery,我有两个函数,在单击元素时触发。但是,我想使用应该通过click事件在另一个函数中执行的第一个函数。我还是个新手 我已经尝试调用该函数,并在希望执行该函数的另一个函数中声明函数名。是否因为第一个函数只能在其元素上的vie click事件中触发而无法工作?我还将click事件嵌套在一个函数上,但它没有很好地工作 $(document).ready(function() function toggleMenuClick(){ $('.menu-link').click(function (norm
$(document).ready(function()
function toggleMenuClick(){
$('.menu-link').click(function (normal){
normal.preventDefault();
$('.menu-link').toggleClass('close');
$('.overlay-menu').toggleClass('active');
$('.menu-link').toggleClass('fixed');
$('nav ul').toggleClass('show');
$('nav ul li').toggleClass('fade-in');
$('body').toggleClass('min-height');
if ($(window).scrollTop() <= 99){
$('.menu-link').toggleClass('white');
}
});
}
toggleMenuClick();
$('.scroll-link').click(function(navigate){
navigate.preventDefault();
$("html, body").animate({
scrollTop: $(this.hash).offset().top
}, 700);
toggleMenuClick();
});
});
$(文档).ready(函数()
函数toggleMenuClick(){
$('.menu link')。单击(功能(正常){
normal.preventDefault();
$('.menu-link').toggleClass('close');
$('.overlay menu')。toggleClass('active');
$('.menu-link').toggleClass('fixed');
$('nav ul').toggleClass('show');
$('nav ul li')。切换类别('fade-in');
$('body').toggleClass('min-height');
if($(window).scrollTop()您需要在单击处理程序之外将toggleMenuClick
设置为一个单独的函数,以便可以单独调用它
它看起来像这样:
var toggleMenuClick = function() {
// Do classes stuff...
}
$('.menu-link').click(function(e) {
e.preventDefault();
toggleMenuClick();
});
$('.scroll-link').click(function(e){
// Do stuff...
// Now you can call your function
toggleMenuClick();
});
您需要将toggleMenuClick
设置为一个单独的函数,在单击处理程序之外,这样您就可以单独调用它了
它看起来像这样:
var toggleMenuClick = function() {
// Do classes stuff...
}
$('.menu-link').click(function(e) {
e.preventDefault();
toggleMenuClick();
});
$('.scroll-link').click(function(e){
// Do stuff...
// Now you can call your function
toggleMenuClick();
});
不要在其他事件侦听器中创建事件侦听器。这会导致重复的事件侦听器创建,并且创建与逻辑自身冲突的可能性非常高。最佳情况下,您将多次执行相同的工作。最坏情况下,它会停止工作。实际上,最坏情况下,它会在som中工作这是我想到的最后一个方法,但显然是逻辑错误的。不要在其他事件侦听器中创建事件侦听器。这会导致重复创建事件侦听器,并且与逻辑本身产生冲突的可能性非常高。B您将多次执行同一项工作。最坏的情况是,它停止工作。事实上,最坏的情况是,它在某些情况下工作,而在其他情况下不工作,然后找出原因是调试的噩梦。这是我想到的最后一种方法,但显然是逻辑错误的。感谢您的输入。我能说出它的名称吗函数并调用它,而不是将其存储在变量中?是的,您可以像function-toggleMenuClick()那样做{
。唯一的区别是,如果你这样做,它在声明之前就可以通过提升的魔力来访问。这取决于你想要什么。谢谢你的输入。我可以命名函数并调用它,而不是将它存储在变量中吗?是的,你可以像函数toggleMenuClick(){
。唯一的区别是,如果你这样做,它可以在声明之前通过提升的魔力访问。这取决于你想要什么。