После установки обновления безопасности, описанного в бюллетене по безопасности MS04-038, Internet Explorer не выполняет код, если обработчик события представляет собой вызов функции DOM

Аннотация
Обновление безопасности 834707 изменяет способ обработки обозревателем Internet Explorer указателей на функции. Это выражается в изменении поведения обозревателя в случаях, когда обработчик события непосредственно указывает на функцию DOM (Document Object Model). В данной статье рассматривается указанная проблема и предлагается несколько вариантов ее временного решения
Проблема
Обозреватель Microsoft Internet Explorer не выполняет клиентскую часть кода обработчика события, если данный обработчик представляет собой вызов функции DOM.
Причина
Обновление безопасности MS04-038 изменяет способ обработки обозревателем Internet Explorer указателей на функции. Это выражается в изменении поведения обозревателя в случаях, когда обработчик события непосредственно указывает на функцию DOM, как показано в следующем примере.
on<event> = DOM function pointer
Временное решение
Для временного решения данной проблемы воспользуйтесь одним из следующих способов.
  • Выполните непосредственный вызов нужной функции с помощью JavaScript, как показано ниже.

    Исходный код:
    <A href=# onclick=window.close>Close this window</A>
    Измененный код:
    <A href=# onclick="window.close()">Close this window</A>
  • Сохраните указатель на функцию в переменной и создайте дополнительную функцию, обращающуюся к содержимому данной переменной. В следующем примере для закрытия окна используется событие onclick.

    Исходный код:
    <A href=# onclick=window.close>Close this window</A>
    Измененный код:
    <script>var my_funcptr = window.close;function FunctionPointerInvoker(){    my_funcptr();}</script><A href=# onclick="FunctionPointerInvoker()">Close this window</A>
Статус
Такое поведение является особенностью данного продукта.
Ссылки
Дополнительные сведения об обновлении безопасности MS04-038 см. в следующей статье базы знаний Майкрософт:
834707 MS04-038: Накопительное обновление безопасности для обозревателя Internet Explorer
Свойства

Номер статьи: 887741 — последний просмотр: 12/17/2004 15:03:00 — редакция: 2.0

Microsoft Internet Explorer 5.01, Microsoft Internet Explorer 5.5, Microsoft Internet Explorer (Programming) 6.0

  • kbtshoot kbprb KB887741
Отзывы и предложения