Показать сообщение отдельно
  #8 (permalink)  
Старый 24.05.2011, 13:53
Профессор
Отправить личное сообщение для Sweet Посмотреть профиль Найти все сообщения от Sweet
 
Регистрация: 16.03.2010
Сообщений: 1,618

monolithed, мне просто вспомнилось, как когда-то мне надо было эвалить ( я был молод, горяч и любил эвалить ) скрипты. Но так как эвал происходит в текущем контексте, переменные оказывались не там, где надо:
(function(){
  eval("var test = true;");
}());
alert("test" in window);
Тогда я решил проблему так:
(function(){
  eval.call(window, 'var test = true;');
}());
alert("test" in window);
А потом я неожиданно узнал, что в ie так не получится. Тогда мне помог execScript, но с тех пор я понял: нашел "скрытый бонус", первым делом опробуй его в ie!
Ответить с цитированием