Javascript-форум (https://javascript.ru/forum/)
-   Javascript под браузер (https://javascript.ru/forum/css-html/)
-   -   В IE8 не работает window['alert'].apply(widow, [someString]) (https://javascript.ru/forum/css-html/52695-v-ie8-ne-rabotaet-window%5B%27alert%27%5D-apply-widow-%5Bsomestring%5D.html)

vahrammer 01.01.2015 19:50

В IE8 не работает window['alert'].apply(widow, [someString])
 
Вложений: 1
Здравствуйте, уважаемые.
Собственно, сабж. Почему в IE 8 не работает вызов window методов через apply?
Спасибо.

bes 01.01.2015 20:31

Цитата:

Сообщение от vahrammer
В IE8 не работает window['alert'].apply(widow, [someString])
Здравствуйте, уважаемые.
Собственно, сабж. Почему в IE 8 не работает вызов window методов через apply?
Спасибо.

window["alert"].apply(this, ["What is IE8?"]);

vahrammer 01.01.2015 20:50

Вложений: 2
IE8 - это Internet Explorer 8 :)
В этом браузере ваш пример не работает, не поленитесь и попробуйте сами. Результат на скринах во вложении.
ЗЫ: Я запускал именно в Internet Explorer 8.

bes 01.01.2015 20:53

Цитата:

Сообщение от vahrammer
IE8 - это Internet Explorer 8
В этом браузере ваш пример не работает. Скрины во вложении.

я к тому, что гвозди обычно заколачивают в гроб, а не выдирают

vahrammer 01.01.2015 21:19

Я бы с радостью, но сказали - надо. Ладно, нагорожу каких-нибудь костылей.
Спасибо.

Aetae 01.01.2015 22:12

Попробуй так(в эмуляции работает по крайней мере):
Function.prototype.apply.call(window.alert, window, ['tst'])
Дело в том что в ie<9 alert с какого-то хрена не function, а object:
alert(typeof alert)
соответственно метода функции "apply" просто не имеет в прототипе.

vahrammer 02.01.2015 06:43

Спасибо большое. Ваш способ работает.
Да, сейчас посмотрел, в IE8- многие методы у window не являются функциями. Мне в данном случае нужен был scrollTo, который - тоже object.


Часовой пояс GMT +3, время: 08:24.