创建代码以一个接一个地运行函数的一些想法(DOM)

时间:2014-09-16 16:51:16

标签: javascript

我有一些操作DOM的函数。 一个创建一些CSS样式,其他一些html元素,然后一些css再次等等 (例如7-8步)

每个功能都或多或少取决于之前的功能。需要一种回调方法。

我知道如何创建购买我喜欢这样的功能(避免手动编写回调电话)

My_dom_auto.add (function () {} ); // 1
My_dom_auto.add (function () {} ); // 2
My_dom_auto.add (function () {} ); // 3
My_dom_auto.run ();

My_dom_auto.add会将收到的函数封装成一个新函数,如下所示:

My_dom_auto.add = fucntion (original_function_code) {

 fake_function.push (
     original_funcion_code_coied_line_by_line ;
     My_dom.internal_function()
}
} 

所以我可以调用fake_functions ......

问题是......可以吗?怎么样 ?使用功能对象? 其他....如何在函数内注入新的最后一行?

你怎么看?任何想法将不胜感激。

1 个答案:

答案 0 :(得分:1)

我认为使用Stack(抽象数据类型)

会很有用

使用数组来推送函数  (cssStyle_1 - > HtmlElement_1 - > cssStyle_2 - > HtmlElement_2-> ...)

然后弹出功能并一个接一个地执行

a= function(){console.log("1") }
b= function(){console.log("2") }
c= function(){console.log("3") }

tab = []

tab.push(a)
tab.push(b)
tab.push(c)

tab.pop()
// 3
tab.pop()
// 2
tab.pop()
// 1