我想执行这个jQuery字符串,但到目前为止我知道如何使用eval的唯一方法是什么,这是一种更合适的方法呢?
var first = thisWay('next')
var second = thisWay('prev')
var thisWay = function(direction){
var Chain = "$('#img')." + direction + "('div');";
eval(Chain)
}
答案 0 :(得分:6)
还有另一种使用[]
表示法访问属性的方法。这样你也可以传递动态值:
$('#img')[direction]('div');
准确地说,$(...).something
等于$(...)['something']
。因此,.
之后传递的内容始终是文字字符串,而[...]
不一定必须是文字字符串。
答案 1 :(得分:2)
function thisWay(direction) {
if (direction == 'next') {
$('#img').next('div');
}
else {
$('#img').prev('div');
}
}