背景
函数名写在 html 上,在 js 中定义这个变量,js 报错该函数不存在,在此给出解决方法
代码
//html代码如下
<a data-function="qipa" class="clickMe">250</a>
//js代码
function qipa(){
alert('奇葩250');
}
$('.clickMe').click(function(){
var functionName = $(this).attr('data-function');
//functionName();//直接运行报错
//解决方案是 建立一个函数来调用functionName
function tmpFunction(data){
//如果要传递参数,则按照这种形式
//eval(functionName + '(' + data + ')');
//不传递参数,则按照这种形式
eval(functionName + '()');
}
tmpFunction();
})