Ext.ux.iconCls

2008.10.12. 11:20 stack

Sosem értettem, hogy miért kell a icon és az iconCls-t így túlbonyolítani, bőven elég lenne csak az egyik (az icon), ám mégis néhol mindkettő van, néhol meg csak az iconCls.

Az ötlet, hogy készítsek egy singleton osztályt ennek a dilemmának a feloldására nem saját, ám a több megoldás közül egyik sem tetszett, így hát íme a száz plusz egyedik leegyszerűsített Ext.ux.iconCls:

Ext.ux.iconCls = function() {
  var styleSheetId = 'styleSheetIconCls';
  Ext.util.CSS.createStyleSheet('/* Ext.ux.iconCls */', styleSheetId);
  var cssClasses = {};
  return {
    get: function(icon) {
      if (!icon) return null;
      if (typeof cssClasses[icon] == 'undefined') {
        cssClasses[icon] = 'icon_' + Ext.id();
        var styleBody = '\n.'+cssClasses[icon]+' { background-image: url('+icon+') !important; }';
        if (Ext.isIE) {
          document.styleSheets[styleSheetId].cssText += styleBody;
        } else {
          Ext.get(styleSheetId).dom.sheet.insertRule(styleBody, 0);
        }
      }
      return cssClasses[icon];
    }
  };
}();

Használata roppant egyszerű:

new Ext.valami({
  ...,
  iconCls: Ext.ux.iconCls.get( 'img.png' )
});

Szólj hozzá!

Címkék: css icon class

A bejegyzés trackback címe:

http://extjs.blog.hu/api/trackback/id/tr62709544

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.

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?