将字符串插入表达式

时间:2016-03-18 12:05:17

标签: javascript html css

在我的脚本中,用户必须指定方向,我必须根据此方向执行我的代码。我唯一的想法是:

function (dir) {
  var element = document.querySelector('#id');
  eval('element.style. ' + dir + ' = 10\'px'\;'
}

我想知道是否有更好的方法可以做到这一点。因为我知道eval不是一个好习惯。

1 个答案:

答案 0 :(得分:2)

如果没有错误检查以确保element.style[dir]存在,您可以执行以下操作:

function foo(dir) {
  var element = document.querySelector('#id');
  element.style[dir] = '10px';
}

我假设你会像这样使用它:

foo('top'); // ==>  element.style.top = '10px';