如何强制执行以前注入的脚本?

时间:2013-08-26 03:33:24

标签: javascript html5

我有一个DIV,我注入4或5个动态创建的不同SCRIPT元素。脚本在注入时执行。事件最终被引发,导致需要再次执行DIV中存在的任何SCRIPT。

<DIV id="divWrapper">
    <script id="scr1">...</script>
    <script id="scr2">...</script>
    <script id="scr3">...</script>
    <script id="scr4">...</script>
</DIV>

我强制divWrapper重新渲染,但这不会导致注入的脚本再次执行。

TY你的时间。

2 个答案:

答案 0 :(得分:1)

你可以做两件事:

  • 将它们包装在一个函数中,当你重新渲染div时,也可以通过调用这些函数来调用它们。
  • 或只需使用eval()

答案 1 :(得分:1)

我认为,您最好的选择是让您的脚本定义可以在以后调用的独特函数。

如果您不想为这些函数提供所有唯一名称,您可以像这样构建脚本:

  • 在全局初始化时(在加载脚本之前)创建一个空的全局数组
  • 让每个动态加载的脚本定义一个包含所有脚本代码的函数,调用它,并将新函数附加到全局数组
  • 在您的活动到达时调用全局数组中的每个函数