wgGadget_CommonDomJsVersion = "20120608001"; /* Fonctions utiles pour générer une barre d'outils d'édition évoluée. */ function style_name(name) { return name.replace(/([A-Z])/g,"-$1").toLowerCase(); } function styleName(name) { var name_parts=name.split(/(-[a-z])/g); for(var i=0;i DOM node "..." -> array of DOM text node and
elements [ "nom", { "N": "V" }, ... ] -> ... */ function genDOM(def) { while (getObjectClassName(def)=="Function") def=def(); if (typeof(def)=="string") { // Remplacement des \n par des
var res=[]; var lines=def.split("\n"); for(var i=0;i0) res.push(document.createElement("br")); if (lines[i].length>0) res.push(document.createTextNode(lines[i])); } return res; } if (getObjectClassName(def)=="Array") { var e = document.createElement(def[0]); var j = 1; if ((def.length>1)&&(getObjectClassName(def[1])=="Object")) { var attrs = def[1]; j++; for(name in attrs) { if ((name=="style")&&(typeof(attrs[name])=="object")) { var styles = attrs[name]; for(nom in styles) { e.style[nom] = styles[nom]; var autre = styleName(nom); if (autre!=nom) e.style[autre] = styles[nom]; autre = style_name(nom); if (autre!=nom) e.style[autre] = styles[nom]; } } else e.setAttribute(name,attrs[name]); } } for(;j= e.childNodes.length) e.appendChild(node); else e.insertBefore(node, e.childNodes[pos]); } /* Syntaxe : node, position, def, def, ... */ function setDomAt(e, pos) { for(var i=2;i