top.eval()
Ситуация простая, в функции эвалим вновь создаваемую переменную, надо чтоб эта переменная была глобальной.
Придумал вот такой вариант:
function doEval() {
top.eval('var punkt="punt"');
}
doEval();
alert(punkt);
Т.е. просто перед eval поставить top. Зачем я написал этот топик? Интересно просто, так вообще катит или есть еще какие-нибудь способы? =) |
Не понял?
А просто без var она глобальная разве не станет??? |
Как и ожидалось в ИЕ не работает. Надо так
function doEval(str) {
window.execScript ? window.execScript(str) : window.eval.call(window, str);
}
|
Цитата:
А так, конечно, все было бы на отлично. |
Скажи, что требуется, я так и не понял, почему нельзя обойтись без вара?
|
Цитата:
|
Kolyaj, спасибо.
|
Kolyaj, не работает в сафари под виндой =\
|
и что мешает убрать реплейсом вар и выполнить эвалом?
Будет и кроссбраузерно и не надо всякие top.eval придумывать. Только я не вижу смысла в переделке переменной в глобальную... |
Цитата:
Цитата:
|
| Часовой пояс GMT +3, время: 21:26. |