gpt4 book ai didi

javascript - 有没有办法调用作为参数传递的元素的函数?

转载 作者:行者123 更新时间:2023-12-02 17:14:25 24 4
gpt4 key购买 nike

我想创建一个函数,该函数接收另一个函数作为参数,然后在元素中调用此函数,如下所示:

 function applyFunctionToDivs(function1, function2, function3) {
$('#div1').function1();
$('#div2').function2();
$('#div3').function3();
};

有没有 jQuery/Javascript 方法可以直接执行此操作?

我完成了这一点,但创建了如下附加功能:

    if (value == 'A') {
applyFunctionToDivs(showElement, hideElement, hideElement);
}

if (value == 'B') {
applyFunctionToDivs( hideElement,showElement, hideElement);
}

if (value == 'C') {
applyFunctionToDivs(hideElement, hideElement, showElement);
}

我要显示/隐藏的功能:

function showElement(elem) {
elem.show();
};

function hideElement(elem) {
elem.hide();
};

function applyFunctionToDivs(fun1, fun2, fun3) {
fun1($('#div1'));
fun2($('#div2'));
fun3($('#div3'));
};

我认为这可以优化。有直接这样做的建议吗?

最佳答案

来自https://stackoverflow.com/a/11356926/252671 ,您可以执行以下操作:

$("body")['function']()

因此,您可以执行以下操作,但可以进一步重构以将参数放入数组中并循环遍历该数组。

 function applyFunctionToDivs(function1, function2, function3) {
$('#div1')[function1]();
$('#div1')[function2]();
$('#div1')[function3]();
};

关于javascript - 有没有办法调用作为参数传递的元素的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24561268/

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