/[drupal]/contributions/themes/ability/js/jquery.pngFix.js
ViewVC logotype

Diff of /contributions/themes/ability/js/jquery.pngFix.js

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.1, Sun Sep 30 09:05:42 2007 UTC revision 1.2, Sun Feb 17 16:35:37 2008 UTC
# Line 0  Line 1 
1    /**
2     * --------------------------------------------------------------------
3     * jQuery-Plugin "pngFix"
4     * by Andreas Eberhard, andreas.eberhard@gmail.com
5     *                      http://jquery.andreaseberhard.de/
6     *
7     * Copyright (c) 2007 Andreas Eberhard
8     * Licensed under GPL (http://www.opensource.org/licenses/gpl-license.php)
9     *
10     * Version: 1.0, 31.05.2007
11     * Changelog:
12     *      31.05.2007 initial Version 1.0
13     * --------------------------------------------------------------------
14     */
15    
16    (function(jQuery) {
17    
18    
19    jQuery.fn.pngFix = function() {
20    
21            var ie55 = (navigator.appName == "Microsoft Internet Explorer" && parseInt(navigator.appVersion) == 4 && navigator.appVersion.indexOf("MSIE 5.5") != -1);
22            var ie6 = (navigator.appName == "Microsoft Internet Explorer" && parseInt(navigator.appVersion) == 4 && navigator.appVersion.indexOf("MSIE 6.0") != -1);
23    
24            if (jQuery.browser.msie && (ie55 || ie6)) {
25    
26                    jQuery(this).find("img[@src$=.png]").each(function() {
27    
28                            var prevStyle = '';
29                            var strNewHTML = '';
30                            var imgId = (jQuery(this).attr('id')) ? 'id="' + jQuery(this).attr('id') + '" ' : '';
31                            var imgClass = (jQuery(this).attr('class')) ? 'class="' + jQuery(this).attr('class') + '" ' : '';
32                            var imgTitle = (jQuery(this).attr('title')) ? 'title="' + jQuery(this).attr('title') + '" ' : '';
33                            var imgAlt = (jQuery(this).attr('alt')) ? 'alt="' + jQuery(this).attr('alt') + '" ' : '';
34                            var imgAlign = (jQuery(this).attr('align')) ? 'float:' + jQuery(this).attr('align') + ';' : '';
35                            var imgHand = (jQuery(this).parent().attr('href')) ? 'cursor:hand;' : '';
36                            if (this.style.border) {
37                                    prevStyle += 'border:'+this.style.border+';';
38                                    this.style.border = '';
39                            }
40                            if (this.style.padding) {
41                                    prevStyle += 'padding:'+this.style.padding+';';
42                                    this.style.padding = '';
43                            }
44                            if (this.style.margin) {
45                                    prevStyle += 'margin:'+this.style.margin+';';
46                                    this.style.margin = '';
47                            }
48                            var imgStyle = (this.style.cssText);
49    
50                            strNewHTML += '<span '+imgId+imgClass+imgTitle+imgAlt;
51                            strNewHTML += 'style="position:relative;white-space:pre-line;display:inline-block;background:transparent;'+imgAlign+imgHand;
52                            strNewHTML += 'width:' + jQuery(this).width() + 'px;' + 'height:' + jQuery(this).height() + 'px;';
53                            strNewHTML += 'filter:progid:DXImageTransform.Microsoft.AlphaImageLoader' + '(src=\'' + jQuery(this).attr('src') + '\', sizingMethod=\'scale\');';
54                            strNewHTML += imgStyle+'"></span>';
55                            if (prevStyle != ''){
56                                    strNewHTML = '<span style="position:relative;display:inline-block;'+prevStyle+imgHand+'width:' + jQuery(this).width() + 'px;' + 'height:' + jQuery(this).height() + 'px;'+'">' + strNewHTML + '</span>';
57                            }
58    
59                            jQuery(this).hide();
60                            jQuery(this).after(strNewHTML);
61    
62                    });
63    
64            }
65    
66    };
67    
68    })(jQuery);

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.2

  ViewVC Help
Powered by ViewVC 1.1.2