Ext.lib.Ajax.isWorking()

2010.03.18. 18:55 stack

Gyakran vannak olyan Ajax hívásaim, amelyek esetleges késleltetése nem okozna semmiféle problémát akkor, ha ezzel fontosabb műveleteket előnybe részesíthetünk. Például az, hogy félpercenként vizsgáljuk, hogy kaptunk-e új üzeneteket kevésbé fontos akkor, ha éppen mi szeretnénk küldeni egy üzenetet.

Ennek vizsgálatához szükségem volt egy olyan függvényre, amely megadja, hogy van-e most futó Ajax hívás. Először még az Ext.Ajax eseményeihez rendeltem hozzá egy számlálót, de ezt már az elején éreztem, hogy ágyúval verébre effektus.

Utána az Ext.lib.Ajax.isLoading(...) függvényt szerettem volna általánosítani. Ám eközben észrevettem, hogy az Ext.lib.Ajax.poll pont az, ami nekem kell. (ez egy olyan objektum, amelynek elemei egy-egy Ajax híváshoz tartozó setInterval elem, az Ajax hívás befejezésekor ExtJs verziótól függően az elem vagy törlődik, vagy null lesz) Tehát abban az esetben, ha létezik a poll objektumnak eleme, amely nem null, akkor létezik folyamatban lévő Ajax hívás, különben nem létezik.

Ext.lib.Ajax.isWorking = function () {
    for (var i in this.poll) {
        if (this.poll.hasOwnProperty(i) && this.poll[i] !== null) {
            return true;
        }
    }
    return false;
};

Szólj hozzá!

Címkék: ajax

A bejegyzés trackback címe:

https://extjs.blog.hu/api/trackback/id/tr831850360

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

Nincsenek hozzászólások.

ExtJS blog, mi ez?

Az ExtJS egy JavaScript keretrendszer, melyet a blog írója elfogultan a legjobbnak tart, és ez a blog olyan apróságok gyűjteménye, melyek ExtJS használata közben felmerültek, eszébe jutottak...

Címkék

ajax (4) alignto (1) állás (3) analytics (1) anchorto (1) android (4) animate (2) array (9) auto (1) back button (1) beautifier (1) beforeevent (1) benchmark (1) blur (1) budapest.js (1) button (1) canvas (1) capture (1) case sensitive (1) center (1) change (1) cikkajánló (1) class (2) closure compiler (1) collapse (1) combobox (3) comment (1) console.log (2) contextmenu (2) core (2) count (1) css (15) csv (1) dataview (1) date (4) datefield (3) datepicker (1) debug (1) doksi (1) dragdrop (1) easing (1) eclipse (1) editor (1) element (5) error (5) eval (2) event (1) fejtörő (1) field (2) fieldset (1) filter (1) firefox (4) firefox extension (2) focus (3) fonts (1) fun (1) function (1) google (2) google chrome (1) grayscale (1) grid (4) group contact (1) header (3) height (2) hidden (1) hirek (2) history (1) htaccess (1) html5 (2) htmleditor (2) https (1) icon (3) id (2) ie (2) ie6 (1) ie9 (1) iframe (3) image (2) indexof (1) javascript (1) jquery (2) jslint (2) jsmin (1) json (7) keymap (1) kipróbálom (2) könyvajánló (2) label (1) layout (1) lint (1) log (1) loop (1) magyar (2) mandelbrot (1) mask (1) math (1) maxlength (1) mistake (1) mysql (5) napi szívás (16) nem extjs (12) node (1) nth child (1) number (1) off (5) offline (1) operator (1) override (20) pagesize (1) paging (2) panel (2) php (7) picker (1) plugin (3) pozicionálás (2) preload (1) print (1) propertygrid (1) pseudo (3) readonly (2) record (1) regexp (1) replace (1) resizable (1) rotate (1) round (1) scale (1) sencha touch (2) server (1) shuffle (1) slider (1) sort (3) sortable (1) store (2) string (7) sum (1) tabchange (1) tabpanel (1) tab key (2) tdd (1) template (1) textarea (2) textfield (1) textitem (1) theme (2) throw (1) timer (1) timestamp (1) title (2) toggle (1) toolbar (6) tools (1) total count (1) transparent (1) tree (1) treenode (1) trigger (1) truncate (1) try (1) ucfirst (1) undefined (2) unique (1) unload (1) urlencode (1) utf8 (2) verzió (1) video (1) viewer (1) viewport (2) visible (2) vtype (1) window (2) xtype (1) zindex (2)

Extjs.blog.hu - RSS

Kérdés?