952280e6d8c3c968b8471d5e58dd32945d39557c
[lhc/web/wiklou.git] / stylesheets / IEFixes.js
1 // IE fix javascript
2 var rslt = navigator.appVersion.match(/MSIE (\d+\.\d+)/, '');
3 if (rslt != null ) var version = Number(rslt[1]);
4 else var version = 0;
5
6 window.attachEvent("onload", hookit);
7 function hookit() {
8 // replaced by special indexed logo for now
9 //fixalpha();
10 if(version == 6) {
11 var wrapper = document.getElementById('tawrapper');
12 if (!wrapper) relativeforfloats();
13 }
14 }
15
16 // png alpha transparency fixes
17 function fixalpha(){
18 // bg
19 if(version >= 5.5) {
20 var logoa = document.getElementById('portlet-logo').firstChild;
21 var bg = logoa.currentStyle.backgroundImage;
22 if (bg.match(/\.png/i) != null){
23 var mypng = bg.substring(5,bg.length-2);
24 logoa.style.backgroundImage = "none";
25 logoa.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+mypng+"', sizingMethod='image')";
26 }
27 }
28 }
29
30 // fix ie6 disappering float bug
31 function relativeforfloats() {
32 var bc = document.getElementById('bodyContent');
33 if (bc) {
34 var tables = bc.getElementsByTagName('table');
35 var divs = bc.getElementsByTagName('div');
36 }
37 setrelative(tables);
38 setrelative(divs);
39 }
40 function setrelative (nodes) {
41 var i = 0;
42 while (i < nodes.length) {
43 if(nodes[i].style.float != ('none'|null) ||
44 nodes[i].align != (''|null|'none'))
45 nodes[i].style.position = 'relative';
46 i++;
47 }
48 }