Q
变量中的函数名称
2
A
回答
6
因为你的函数在一个onload处理加入,使他们是本地的gloabl范围内不可用的方法。
在左侧面板的第二个下拉列表中选择no-wrap header/body,然后将您的jQuery处理程序添加到dom ready处理程序中。
function one() {
alert('one called');
}
function two() {
alert('two called');
}
function three() {
alert('three called');
}
jQuery(function() {
jQuery("button").bind("click", function() {
var funcName = "one";
window[funcName]();
//alert('here');
});
})
演示:Fiddle
的jsfiddle增加在window.onload = function(){}
处理器默认脚本,所以任何函数/变量声明会有局部的功能范围,并不会在全球范围内提供(窗口)
2
这句法(从你的例子提琴使用的代码)的作品就好了。在这里我明确地将该函数添加到窗口对象。
有很多关于为什么这项工程On This Question和Arun P Johny的答案给出了一个体面的解释信息,但基本上归结为表达一个函数和声明一个函数。
window.one = function() {
alert('one called');
}
0
您在设定功能方面存在问题。你可以这样来做:
我改变你的代码:
window.one = function(){
alert('one called');
}
window.two = function() {
alert('two called');
}
window.three = function() {
alert('three called');
}
jQuery("button").on("click", function() {
var funcName = window.prompt("What function to fire?","");
window[funcName]();
});
和固定的小提琴:
相关问题
- 1. 变量函数名称
- 2. JavaScript变量链中的函数名称
- 3. 变量中的Javascript函数名称
- 4. PHP:函数名称中的变量
- 5. 函数参数名称和类变量名称的区别
- 6. 函数参数名称和C中堆栈帧的变量名?
- 7. 使用变量缩短函数名称
- 8. 从变量名称加载JavaScript函数
- 9. 调用函数变量/名称信息
- 10. 调用javascript函数名称在变量
- 11. 变量表名称MySQL存储函数
- 12. 在脚本块中传递函数名称作为变量(函数:$变量)
- 13. Emacs Lisp - 声明具有变量/变量名称的函数
- 14. 标量值函数中列名称的变量
- 15. 将数据帧名称分配给函数中的变量
- 16. 为什么局部变量名称优先于JavaScript中的函数名称?
- 17. 如何在ColdFusion中将变量名称作为函数名称的一部分?
- 18. 函数变量和函数变量名称相同。如何访问?
- 19. 在bash中传递给函数的变量的名称
- 20. 当函数名称变化
- 21. AS2中的变量名称#
- 22. 具有匹配变量名称的命名函数表达式
- 23. 使用函数在类中设置变量的名称?
- 24. 将按钮名称传递给函数中的变量
- 25. 使用VBA中的变量名称调用函数
- 26. 函数名称中的连接变量 - javascript
- 27. 动态指定函数中的变量名称
- 28. 调用存储在字符串变量中的函数名称?
- 29. 静态函数中的动态变量名称
- 30. 使用函数来写下Arduino中的变量名称
如果你要称呼其为window'的'属性,你首先必须使你的函数成为'window'的属性。 –
这是你的小提琴的问题。默认情况下,jsfiddle自动将代码封装在一个准备好的处理程序中,所以你的函数不在全局范围内。你可以告诉jsfiddle你不想要你的代码包装(在你选择你想要的jquery的左下角):http://jsfiddle.net/Cwhwx/ –