Как проверить в JavaScript, поддерживает ли объект XMLHttpRequest события прогресса W3C? - PullRequest
8 голосов
/ 08 августа 2009

Есть ли способ проверить в JavaScript, поддерживает ли объект XMLHttpRequest События прогресса W3C ? Я имею в виду, что если в свойствах onload, onprogress, onabort, onerror и т. Д. Для некоторой функции-обработчика эти функции называются этими событиями, как описано.

Дополнительный (бонусный) вопрос: есть ли способ дополнить XMLHttpRequest (например, используя некоторые таймеры) для поддержки этих событий?

Примечание: я впервые узнал о событиях W3C Progress Events в контексте XMLHttpRequest здесь

1 Ответ

9 голосов
/ 09 августа 2009

Вы пытались сделать это таким образом?

try {
    var xhr = new XMLHttpRequest();

    if ('onprogress' in xhr) {
        // Browser supports W3C Progress Events
    } else {
        // Browser does not support W3C Progress Events
    }
} catch (e) {
    // Browser is IE6 or 7
}

Я проверял это в Firefox и IE8. Firefox показывает, что поддерживает это. IE заявляет, что не поддерживает события W3C Progress.

...