编程语言
首页 > 编程语言> > javascript-如何多次调用函数?

javascript-如何多次调用函数?

作者:互联网

我的问题是:我正在开发一个移动友好的网站,其中包含2个样式表,一个用于“面向PC”的可视化,另一个用于移动可视化.从2种CSS一起,当从一种可视化模式切换到另一种可视化模式时,我需要一个函数来修改菜单上的一些href属性.

我不会深入介绍这些东西的细节,因为它会很长而且可能很无聊,无论如何,我都需要同时在$(document).ready和$(window).resize上调用该函数,即每个调整窗口大小的时间.

因此,我声明了一个函数并将其命名为goToAnchor,以便能够多次调用它:

$(document).ready(function() {
   function goToAnchor() {  ... modify some href attr ... }
   goToAnchor();
});

很好,但是正如我所说,每次调整窗口大小时,我还需要执行该函数,因此我认为代码可能类似于:

$(document).ready(function() {
   function goToAnchor() {  ... modify some href attr ... }
   goToAnchor();
   $(window).resize(goToAnchor());
});

问题很简单,该函数无法在调整大小的情况下运行.我检查了jQuery文档,发现关于将函数链接到事件的每个示例都是这样编写的:

$(window).resize(function() { ...do stuff...} );

但是,我不会使用匿名函数,因为我之前已经编写了该函数.我想做的事情非常简单:多次调用一个函数而无需借助匿名函数“复制”我的代码(毕竟,这就是函数应该起作用的方式,对吗?).

解决方法:

更改$(window).resize(goToAnchor());到$(window).resize(goToAnchor);

标签:javascript,jquery,function,anonymous-function
来源: https://codeday.me/bug/20191011/1893766.html