123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 |
- var supersleight = function() {
-
- var root = false;
- var applyPositioning = true;
-
- // Path to a transparent GIF image
- var shim = 'x.gif';
-
- // RegExp to match above GIF image name
- var shim_pattern = /x\.gif$/i;
-
-
-
- var fnLoadPngs = function() {
- if (root) {
- root = document.getElementById(root);
- }else{
- root = document;
- }
- for (var i = root.all.length - 1, obj = null; (obj = root.all[i]); i--) {
- // background pngs
- if (obj.currentStyle.backgroundImage.match(/\.png/i) !== null) {
- bg_fnFixPng(obj);
- }
- // image elements
- if (obj.tagName=='IMG' && obj.src.match(/\.png$/i) !== null){
- el_fnFixPng(obj);
- }
- // apply position to 'active' elements
- if (applyPositioning && (obj.tagName=='A' || obj.tagName=='INPUT') && obj.style.position === ''){
- obj.style.position = 'relative';
- }
- }
- };
- var bg_fnFixPng = function(obj) {
- var mode = 'scale';
- var bg = obj.currentStyle.backgroundImage;
- var src = bg.substring(5,bg.length-2);
- if (obj.currentStyle.backgroundRepeat == 'no-repeat') {
- mode = 'crop';
- }
- obj.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "', sizingMethod='" + mode + "')";
- obj.style.backgroundImage = 'url('+shim+')';
- };
- var el_fnFixPng = function(img) {
- var src = img.src;
- img.style.width = img.width + "px";
- img.style.height = img.height + "px";
- img.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "', sizingMethod='scale')";
- img.src = shim;
- };
-
- var addLoadEvent = function(func) {
- var oldonload = window.onload;
- if (typeof window.onload != 'function') {
- window.onload = func;
- } else {
- window.onload = function() {
- if (oldonload) {
- oldonload();
- }
- func();
- };
- }
- };
-
- return {
- init: function() {
- addLoadEvent(fnLoadPngs);
- },
-
- limitTo: function(el) {
- root = el;
- },
-
- run: function() {
- fnLoadPngs();
- }
- };
- }();
- // limit to part of the page ... pass an ID to limitTo:
- // supersleight.limitTo('header');
- supersleight.init();
|