Help : Reading CSS through JavaScript

J

Joop

Hello everybody,

I'm trying to build a page that can be manipulated by any user through
CSS. The user can then store his layout in a database, so it can be
presented on the web. Therefore I'm trying to build a function that
will output the complete CSS to a database.

Here's my code:

var isIE = (navigator.appName == "Microsoft Internet Explorer");
var isNS = (navigator.appName == "Netscape");

// Genereert output voor opslag in database
function generateCSS() {
var output = '';

var sheet = parent.app.document.styleSheets[0];
var ssRules = sheet.cssRules || sheet.rules;

for(i = 0; i < ssRules.length; i++) {

output += ssRules.selectorText + ' {';

for(var item in ssRules.style) {
if(isIE && ssRules.style.getAttribute(item)) {
output += '\n ' + item + ':';
output += ssRules.style.getAttribute(item) + ';';
} else if (isNS) {
output += 'what the hell shoud I put here!?';
}
}
output += '\n}\n\n';
}
alert(output);
}

Though this works pretty cool in IExplorer, I can't seem to get this
working with Mozilla. Can anyone help me on this one?!? I've been
studying these forums for hours now, and can't seem to come up with a
decent working solution.

Thnx in advance for any kind of attention to this... :)
 
R

RobG

Joop said:
Hello everybody,

I'm trying to build a page that can be manipulated by any user through
CSS. The user can then store his layout in a database, so it can be
presented on the web. Therefore I'm trying to build a function that
will output the complete CSS to a database.

Here's my code:
[...]

Though this works pretty cool in IExplorer, I can't seem to get this
working with Mozilla. Can anyone help me on this one?!? I've been
studying these forums for hours now, and can't seem to come up with a
decent working solution.

What on earth would we do without quirksmode?

<URL:http://www.quirksmode.org/dom/w3c_css.html>
 
J

Joop Wiersma

Rob,

Thanks a million! That was a MAJOR help, and I've been able to finish my
code now...
(Perhaps I'll be "finetuning" it a little bit in the future, now that I
have all thie "new knowledge", but hey... It works!)

In case anyone's interested, here's what I finally did :

function generateCSS() {
var output = '';
var i;
var sheet = parent.app.document.styleSheets[0];
var ssRules = sheet.cssRules || sheet.rules;

if(isIE) {
for(i = 0; i < ssRules.length; i++) {
output += ssRules.selectorText + ' {';
for(var item in ssRules.style) {
if(isIE && ssRules.style.getAttribute(item)) {
output += '\n ' + item + ':';
output += ssRules.style.getAttribute(item) + ';';
}
}
output += '\n}\n\n';
}
} else if (isNS) {
for(i = 0; i < ssRules.length; i++) {
output += ssRules.selectorText + '{';
output += ' ' + ssRules.style.cssText + '\n';
output += '}\n\n';
}
}
alert(output);
}


Again, Rob : "Thanks!" :)
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,764
Messages
2,569,564
Members
45,039
Latest member
CasimiraVa

Latest Threads

Top