Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Аватара для Prisoner

Engrossed by the Void


Сообщения: 2229
Благодарности: 60

Профиль | Отправить PM | Цитировать


Цитата:
// здесь myvar из переменной становится константой для ЭТОЙ функции!!!
Верно, становится. Но именно поэтому теряется смысл нагромождения eval. Вы определяете обработчик, определить его можно однажды (потом - лишь переопределить) и целиком. Поэтому ваша переменная, ставшая константой ничем не отличается от внешней переменной, видимой из обработчика - глобальной. Если предполагать, что myvar внешняя относительно контекста обработчика, то отпадает надобность в eval, который, Вы верно выразились, добавляет "некрасивость" решению.
Так ведь проще:
Код: Выделить весь код
var myvar = 'myvar_value';
document.getElementById('element_id').onmouseover = function(e) {
  alert(myvar);
  return;
};

-------
Не могу дать более дельный совет - не хватает системных ресурсов...


Отправлено: 14:23, 19-09-2006 | #6