在javascript原型表达式中插入变量字符串

问题描述:

请原谅我在这个问题上给你一个令人困惑的标题。 我真的很困惑,我不知道如何用换句话说。在javascript原型表达式中插入变量字符串

所以这就是我要做什么。

我正在制作一个自定义Javascript对象来存储数据。

我已经自动化了这个过程,并将对象的每个实例插入到一个数组中。

我正在做一个循环语句来调用对象的每个实例的唯一属性值。

当我想要使用表达式时,对象的属性名称将是可变的,因为我不知道它是哪一个。

基本上我需要将字符串值合并到原型表达式中。

e.g

document.getElementById('text').style."fontsize"=value; 

,因为我不能直接做到这一点,我想可能是我可以使用eval函数:

eval('document.getElementById("text").style.' + buttons[i].cssvalue + '="39px";'); 

但是这仍然无法正常工作。

可以修复这个问题吗?还是有其他方法可以解决这个问题?

如果有一些不清楚的东西,请指出,我会尽力详细说明。

在此先感谢。

+0

这是什么都与prototypejs办?删除了该标签。 – npup 2010-05-25 15:12:53

在javascript中,您可以访问使用这个标志的一个对象的属性:

document.getElementById('text').style["fontSize"] = value; 

所以,你的代码可能是:

document.getElementById('text').style[buttons[i].cssvalue] = "39px"; 
+0

是,或(...)。style [property] = value; – 2010-05-20 00:04:26

+0

ty先生,但我现在无法让它工作。 – 2010-05-20 00:05:30

+0

我检查了其他所有内容,只有这样才能正常工作: document.getElementById(“text”)。style.fontSize =“30px”; – 2010-05-20 00:06:47

首先想到的,看一个Javascript库或框架像JQuery或Dojo他们可能已经解决了你正在查看的问题。我们在工作中使用JQuery,但我更喜欢Dojo的设计,但它更倾向于大型Web应用程序。

除了Jakub的解决方案应该工作。

我不知道这是否有帮助,但我做了一个实用函数,我发布到npm,它允许您将类名/元素与您正在查看的CSS属性一起放入。然后这将返回一个Javascript对象,其中包含CSS属性及其值。

你可以在这里找到它在Github和NPM:

GitHub的:https://github.com/tjcafferkey/stylerjs

NPM:https://www.npmjs.com/package/stylerjs