При добавлении кода в обработчик onclick, есть ли ограничения на то, что можно сделать?
Могу ли я иметь неограниченные заявления, разделенные;
Могу ли я объявить переменные, которые будут жить в глобальной области видимости?
Могу ли я объявить анонимную функцию прямо там и вызвать ее? (Функция () {}) ();?
Есть ли ограничение?
Причина, по которой я спрашиваю, заключается в том, что я помещаю много кода в обработчик onclick, и только в IE одна объявленная мной переменная, которая должна перейти в глобальную область, не будет найдена впоследствии.
Однако этот же код работает в других браузерах и работает в IE, когда я использую тот же код, что и букмарклет.
РЕДАКТИРОВАТЬ: Код здесь находится здесь
РЕДАКТИРОВАТЬ 2: Причина, по которой я создаю такой ужасный и громоздкий обработчик onclick, заключается в том, что я делаю код, который другие люди могут разместить на своих сайтах (подумайте: кнопка Digg), который внедрит мой скрипт. Я пытаюсь сделать их простыми для них, не перегружая их пространство имен, поэтому идеально подходит просто дать им с обработчиком onclick.
Если я абсолютно не могу заставить это работать, то мне придется дать им код, который объявляет с именованной функцией внутри, а затем с обработчиком onclick, который вызывает эту функцию.
Есть идеи?
Спасибо!