在jQuery中,有一个globalEval的和evalScript(此方法未绑定在jQuery对象中)的方法,用于执行Script语句,下面分分来讲一下
首先,说一下evalScript。evalScript方法传入的是一个<script>标签的DOM对象,一般是执行Script标签中的外部引用JS或内部JS语句。如果是一个引用外部的JS,那它直接执行一个AJAX,然后,把asyncy设置为false。如果是执行的Script语句,那就调用jQuery.globalEval。
再说说jQuery.globalEval,globalEval一般用于AJAX取得数据后,如果指定type是script,会调用globalEval,globalEval的内部实现方式比较简单,创建了一个<script>的DOM对象,然后,append了一个TextNode或者用script.text加入Script内容。然后,放入head标签中,再销毁掉。