is not a function
function a(){ alert(this); } window.a(); // Object Window function a(){ alert(this); } window.document.a(); // Uncaught exception: TypeError: 'window.document.a' is not a function Почему так?:-? Ведь второй пример должен работать! Тестил opera & ff |
Не, не должен.
http://javascript.ru/basic/functions |
Вы объявляете функцию методом объекта window, а пытаетесь вызвать из document
function a(){ alert(this); } a(); // Object Window a.call(window.document); //document Возможно вы это имели ввиду |
Aetae,
Почему нет? http://javascript.ru/tutorial/object...ord#shpargalka 1 пример указывает на window который у меня работает, а 2 пример как метод, который должен работать. Почему я не прав? |
Как же так? А если объекты разные? Например
function a(param) { this.style.width = param; } document.getElementById('id').a(0.5); document.getElementsByTagName('div')[0].a(0.5); 2 разных обьекта. Так разве нельзя? |
Нет, нельзя! Вам же написали как можно! Или вы невменяемый?
Относительно последнего примера, выглядит так: function a(param) { this.style.width = param; } a.call(document.getElementById('id'), 0.5); a.call(document.getElementsByTagName('div')[0], 0.5); |
Часовой пояс GMT +3, время: 23:08. |