powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Function.bind, реализация для IE или его замена
6 сообщений из 6, страница 1 из 1
Function.bind, реализация для IE или его замена
    #38004264
MadeInChina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Достал этот эксплорер

Необходимо назначить событие нарисованому span. Пользуюсь для этого bind.

Код: javascript
1.
span.onclick = this.onCellClick.bind(this, this);



Все работает во всех браузерах, кроме IE 6-8, он не знает такой штуки как bind.
Ок, лезем искать и находим здесь

Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
if (!Function.prototype.bind) {
  Function.prototype.bind = function (oThis) {
    if (typeof this !== "function") {
      // closest thing possible to the ECMAScript 5 internal IsCallable function
      throw new TypeError("Function.prototype.bind - what is trying to be bound is not callable");
    }
 
    var aArgs = Array.prototype.slice.call(arguments, 1), 
        fToBind = this, 
        fNOP = function () {},
        fBound = function () {
          return fToBind.apply(this instanceof fNOP && oThis
                                 ? this
                                 : oThis,
                               aArgs.concat(Array.prototype.slice.call(arguments)));
        };
 
    fNOP.prototype = this.prototype;
    fBound.prototype = new fNOP();
 
    return fBound;
  };
}



И не работает, аргументы в функцию приходят undefined.
Подскажите, что неверного в этой функции / что неверно делаю я / чем можно заменить bind в моем случае.

Спасибо.
...
Рейтинг: 0 / 0
Function.bind, реализация для IE или его замена
    #38004344
MadeInChina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Может быть, туда же:

Код: javascript
1.
2.
3.
document.onclick = function(clickEvent) {
document.write(clickEvent);
}



В IE выводит undefined, а мне необходимо узнать координаты мыши. Как заменить?
...
Рейтинг: 0 / 0
Function.bind, реализация для IE или его замена
    #38004350
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Function.bind, реализация для IE или его замена
    #38004386
MadeInChina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо за ссылку, познавательно. Но

Код: javascript
1.
2.
3.
4.
document.onclick = function(clickEvent) {
clickEvent = clickEvent || window.event; // или просто event, без разницы
document.write(clickEvent);
}



выдает ошибку Access is denied. IE 8.0.7601.17514
...
Рейтинг: 0 / 0
Function.bind, реализация для IE или его замена
    #38004413
Фотография Яростный Меч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MadeInChinaСпасибо за ссылку, познавательно. Но

Код: javascript
1.
2.
3.
4.
document.onclick = function(clickEvent) {
clickEvent = clickEvent || window.event; // или просто event, без разницы
document.write(clickEvent);
}




выдает ошибку Access is denied. IE 8.0.7601.17514а если document.write заменить на alert?
...
Рейтинг: 0 / 0
Function.bind, реализация для IE или его замена
    #38004431
MadeInChina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ах, черт, голова не сообразила. Спасибо обоим
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Function.bind, реализация для IE или его замена
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]