var X2={} //my namespace:) X2.Eval=function(code){ if(!!(window.attachEvent && !window.opera)){ //ie execScript(code); }else{ //not ie window.eval(code); } } 现在如果要想在函数内定义全局代码,就可以通过调用X2.Eval(code)方法,一个例子如下: var s='global'; function demo3(){ X2.Eval('var s="local"'); } demo3(); alert(s); //->'local' 另外: (1)对于IE浏览器,默认已经提供了这样的函数:execScript,用于在全局空间执行代码 (2)对于Firefox浏览器,直接调用eval函数,则在调用者的空间执行;如果调用window.eval则在全局空间执行。 原文地址已经失效