+
+function class_check(item, cls_name)
+{
+ if ((" " + item.className + " ").indexOf(" " + cls_name + " ") == -1)
+ return (false);
+ else
+ return (true);
+}
+
+function class_add(item, cls_name)
+{
+ for (i = 1 ; i < arguments.length ; i++) {
+ if (! class_check(item, arguments[i])) {
+ item.className = item.className + " " + arguments[i];
+ }
+ }
+}
+
+function class_rem(item, cls_name)
+{
+ for (i = 1 ; i < arguments.length ; i++) {
+ var item_spc = " " + item.className + " ";
+ var cls_spc = " " + arguments[i] + " ";
+ var cls_out;
+
+ var pos = item_spc.indexOf(cls_spc);
+ if (pos != -1) {
+ cls_out = item_spc.substring(0, pos) + item_spc.substring(pos + cls_spc.length - 1);
+ if (cls_out == " ") {
+ item.className = "";
+ }
+ else {
+ item.className = cls_out.substring(1, cls_out.length - 1);
+ }
+ }
+ }
+}
+
+function class_subst(item, cls_out, cls_in)
+{
+ class_rem(item, cls_out);
+ class_add(item, cls_in);
+}
+