Javascript 在表达式中插入字符串
在我的脚本中,用户必须指定方向,我必须按照这个方向执行代码。我唯一的想法是:Javascript 在表达式中插入字符串,javascript,html,css,Javascript,Html,Css,在我的脚本中,用户必须指定方向,我必须按照这个方向执行代码。我唯一的想法是: function (dir) { var element = document.querySelector('#id'); eval('element.style. ' + dir + ' = 10\'px'\;' } 我想知道是否有更好的方法来做到这一点。因为据我所知,eval不是一种好的做法。无需进行错误检查以确保元素.style[dir]存在,您可以执行以下操作: function foo(dir) {
function (dir) {
var element = document.querySelector('#id');
eval('element.style. ' + dir + ' = 10\'px'\;'
}
我想知道是否有更好的方法来做到这一点。因为据我所知,eval不是一种好的做法。无需进行错误检查以确保
元素.style[dir]
存在,您可以执行以下操作:
function foo(dir) {
var element = document.querySelector('#id');
element.style[dir] = '10px';
}
我假设你会这样使用它:
foo('top'); // ==> element.style.top = '10px';
如果不进行错误检查以确保
元素.style[dir]
存在,则可以执行以下操作:
function foo(dir) {
var element = document.querySelector('#id');
element.style[dir] = '10px';
}
我假设你会这样使用它:
foo('top'); // ==> element.style.top = '10px';
撇开
eval
是错误的工具不谈(接受的答案有正确的解决方案),值得注意的是element.style.left=10'px'代码>无论如何都不是有效的代码。撇开eval
是错误的工具不谈(接受的答案有正确的解决方案),值得注意的是element.style.left=10'px'代码>无论如何都不是有效的代码。