-
Notifications
You must be signed in to change notification settings - Fork 6
/
ie7_pseudo.js
57 lines (54 loc) · 1.86 KB
/
ie7_pseudo.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
/*
Created by Kevin Dees
License: none (public domain)
*/
(function() {
function set_element(rule, content, iee) {
if($(rule).hasClass(iee)) {
if(content) {
$(rule + ' > ' + iee).html(content);
}
}
else {
$(rule).addClass(iee);
if(iee == 'ieb') {
$(rule).each(function(index) {
$(this).prepend($(document.createElement(iee)).append( content ));
});
}
else {
$(rule).each(function(index) {
$(this).append($(document.createElement(iee)).append( content ));
});
}
}
}
function make_content(content) {
if(content == "\"\"" || content == "\'\'" || content == null) {
content = ''; }
else if(content.indexOf('url') == 0) {
content = "<img src='"+content.replace(/url\(/g, '').replace(/\)/, '')+"' />";
}
else {
content = content.substring(0, content.length-1).substring(1);
document.createTextNode(content);
}
return content;
}
var css = document.styleSheets;
for(var i = 0, j = css.length; i < j; i++) {
var rules = css[i].rules;
for(var x = 0, y = rules.length; x < y; x++) {
var selector = rules[x].selectorText;
if(selector.indexOf("> ieb") > 0 || selector.indexOf("> iea") > 0) {
var regex = /\>\s?ie[ab]/g;
var ruleStr = selector.replace(regex, '').replace(/\:[a-z]*/g, '');
var content = rules[x].style.content;
content = make_content(content);
if(selector.indexOf("> ieb") > 0) { var iee = "ieb" }
else { var iee = 'iea'}
set_element(ruleStr, content, iee);
}
}
}
})();