This question of mine (目前没有答案),驱使我找到一个更好的解决方案来解决我正在尝试的问题。
我的要求:
• 可以任意添加到文档中的代码块,无需id
:
<div class="thing">
<elements... />
</div>
• 对象由外部脚本扫描并找到:
var things = yd.getElementsBy(function(el){
return yd.hasClass('thing');
},null,document );
• 对象必须是可单独配置的,我目前拥有的是基于标识符的:
<div class="thing" id="thing0">
<elements... />
<script type="text/javascript">
new Thing().init({ id:'thing0'; });
</script>
</div>
• 因此我需要舍弃标识符 (id="thing0"
),以便在将多个相同代码块添加到页面时不会出现重复
• 我仍然需要能够在没有标识符的情况下单独配置这些对象
所以!综上所述,我想知道在每个添加的代码块的脚本 block 中,在其脚本标记内创建一个动态全局变量。当找到每个“东西”时,我认为获取脚本标记的 innerHTML 并以某种方式将该文本转换为可用的 JS 对象是合法的。
讨论。
好吧,如果你喜欢,请不要讨论,但如果你明白了,请随时纠正我任性的想法或提供更好的解决方案 - 请!
d
最佳答案
我有点理解您的出发点,对此我能给您的唯一建议是查看 eval() 标记。 eval() 函数评估和/或执行一串 JavaScript 代码。首先,eval() 确定参数是否为有效字符串,然后 eval() 解析字符串以查找 JavaScript 代码。如果它找到任何 JavaScript 代码,它将被执行。
因此您可以使用 eval() 标记解析 DIV 或任何元素内的文本。抱歉,我无法为您提供更多帮助。
关于javascript - 如何将文本解析为 JavaScript?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3067661/