有没有一种方法可以调用作为参数传递的元素的函数?
Is there a way to call an element's function passed as parameter?
我想创建一个接收另一个函数作为参数的函数,然后在元素中调用该函数,如下所示:
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]();
};
相关文章:
- 函数未将值作为参数传递
- 如何将参数传递到angularJs中的工厂
- 如何在HTML元素上创建函数,而不是将元素作为参数传递
- JavaScript常量-作为参数传递或直接使用
- 如何传递元素's ID作为使用getElementById的函数的参数
- 是否可以将一个元素还原为它's上一个位置,而不将该位置作为参数传递
- 隐藏JavaScript函数中作为参数传递的元素的父元素
- 调用所有数组元素的函数,而不将项目作为参数传递
- 将当前元素作为参数传递给循环中的回调函数
- 我们如何将html元素作为参数传递到handlebaelper中,以实现显示更多/更少的功能
- 获取被点击元素的ID并作为参数传递
- 通过DOM - JS创建事件时传递元素作为参数
- 有没有一种方法可以调用作为参数传递的元素的函数?
- 将javascript onclick参数传递给另一个页面上的元素
- 将循环变量作为元素函数中的参数传递
- 如何将目标元素作为参数传递给内联事件处理程序
- 什么'这是在JavaScript中将元素作为第一个参数传递给事件处理程序的最简单方法
- 如何传递元素参数给require.js定义调用
- Javascript将元素ID属性作为参数传递
- 在JavaScript中将元素作为第一个参数传递给事件处理程序的最简单方法是什么?