Ext Js Javascript выполнение - PullRequest
       13

Ext Js Javascript выполнение

0 голосов
/ 22 декабря 2009

У меня есть типичное окно стиля Ext Js с левой навигацией, заголовком и центральной областью для отображения материала.

Левая навигация имеет несколько пунктов меню, которые при нажатии загружают что-либо с помощью метода Panel.Load () из указанного URL-адреса в центральную панель.

Моя проблема в том, что в IE, если я слишком быстро щелкаю по многим пунктам меню, я получаю различные ошибки javascript, я полагаю, что к элементам dom пытаются получить доступ, которых больше не существует, так как программа обновления обновляет HTML.

Кто-нибудь сталкивался с этим или есть в любом случае прекратить выполнение javascript после запуска нового запроса на загрузку.

Я пытался использовать это:

    if(Ext.isIE) {
        window.document.execCommand('Stop');
    }
    else {
        window.stop();
    }

Заранее спасибо!

Ответы [ 2 ]

2 голосов
/ 22 декабря 2009

Распространенным решением для обработки чрезмерно быстрого нажатия является буфер код обработки щелчков, который загружает ваши панели так, что он запускается только в том случае, если еще один щелчок не произошел в течение указанного периода времени. Что-то вроде:

item.on('click', function(){ ... }, this, {buffer:50});
0 голосов
/ 22 декабря 2009

На ум приходит простое решение: вы можете создать глобальную переменную, чтобы указать, что идет загрузка, и проверить ее сразу после нажатия на пункт меню. И только продолжайте выполнение, если загрузка еще не выполняется.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...