Есть ли какие-либо ограничения на то, что можно сделать в встроенном обработчике onclick? - PullRequest
1 голос
/ 14 мая 2009

При добавлении кода в обработчик onclick, есть ли ограничения на то, что можно сделать?

Могу ли я иметь неограниченные заявления, разделенные;
Могу ли я объявить переменные, которые будут жить в глобальной области видимости?
Могу ли я объявить анонимную функцию прямо там и вызвать ее? (Функция () {}) ();?
Есть ли ограничение?

Причина, по которой я спрашиваю, заключается в том, что я помещаю много кода в обработчик onclick, и только в IE одна объявленная мной переменная, которая должна перейти в глобальную область, не будет найдена впоследствии.

Однако этот же код работает в других браузерах и работает в IE, когда я использую тот же код, что и букмарклет.

РЕДАКТИРОВАТЬ: Код здесь находится здесь

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

Есть идеи?

Спасибо!

1 Ответ

3 голосов
/ 14 мая 2009

Попробуйте добавить window. в AppD.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...