gpt4 book ai didi

javascript - 在 Javascript 中将字符串转换为函数

转载 作者:行者123 更新时间:2023-12-04 00:35:14 25 4
gpt4 key购买 nike

我在从字符串创建新函数时遇到了一点问题。示例:我有一个 div 和一些按钮。其中一个按钮只是让我的 div 动画,没有别的。但是另一个按钮使 div 动画,动画完成后,调用一个新函数。

我必须将新的后续函数作为变量处理,因为在 div 动画之后我必须调用很多函数。

这是我做的一个例子:http://jsfiddle.net/AmVSq/3/ .我希望你能理解我的问题。

我在 JavaScript 中找到了 new Function();,但它让我产生了疑问,而且 JS 控制台没有记录任何内容。

有人能告诉我我做错了什么吗?非常感谢..

最佳答案

在 JavaScript 中,函数是“第一类”对象。这意味着您可以将它们分配给变量并将它们作为参数传递给其他函数。

当您可以传递函数名称本身时,无需从字符串创建函数,如下所示:

<div><a href="javascript:void(0)" onclick="close_div( alert_me );">Close Div then do something</a></div>

和脚本:

function close_div( next_function ) {
$('#wrap').animate({ 'height': '-=100px' }, 300, function() {
if ( next_function ) {
// do the following function
next_function();
}
});
}

--- jsFiddle DEMO ---

事实上,为了您的目的,您可以简单地将 next_function 传递给 animate 函数,如下所示:

function close_div( next_function ) {
$('#wrap').animate({ 'height': '-=100px' }, 300, next_function);
}

无需检查 next_function 是否为 undefined,因为 .animate 会为您完成。

关于javascript - 在 Javascript 中将字符串转换为函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12201933/

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