Per JS hinzugefügte DIV's nicht mit richtigem CSS angezeigt
cascade
- javascript
Hi
Ich füge per js einem element über nodes neue elemente hinzu. diese elemente sollen wie im stylesheet definiert dargestellt werden (class="subMenuItem", etc.). Funtzt aber net. Wenn ich den erzeugten code direkt anzeige (neue seite mit selbem stylesheet), dann stimmts. anscheinend wird die formatierung nicht berücksichtigt. Hat jemand einen tip?
danke
function openMenu(a_menu) {
// Find menu entry in array and check for submenus
var l_menuID = a_menu.getAttribute("ID");
if (m_menu.hasItem(l_menuID)) {
var l_menuItem = m_menu.getItem(l_menuID);
var l_menuDiv = document.createElement("div");
l_menuDiv.setAttribute("class", "subMenu");
l_menuDiv.appendChild(createMenuEntry(l_menuItem));
a_menu.appendChild(l_menuDiv);
}
}
function createMenuEntry(a_item) {
var l_subEntry = document.createElement("div");
l_subEntry.setAttribute("class", "subMenuEntry");
l_subEntry.setAttribute("class", "subMenuEntry");
l_subEntry.setAttribute("onClick", a_item.url);
if (a_item.hasItems()) {
l_subEntry.setAttribute("onMouseOver", "openMenu(this)");
l_subEntry.setAttribute("onMouseOut", "closeMenu(this)");
}
var l_nodeData = document.createTextNode(a_item.title);
l_subEntry.appendChild(l_nodeData);
return l_subEntry;
}
Hallo,
l_subEntry.setAttribute("class", "subMenuEntry");
l_subEntry.setAttribute("class", "subMenuEntry");
warum zweimal?
Ich benutze hier: l_subEntry.className="subMenuEntry" .
Gruß, Jürgen
Danke, das wars :-)
className hat funktioniert. der doppeleintrag war nur ein versehen.
gruss matthias
Hallo,
l_subEntry.setAttribute("class", "subMenuEntry");
l_subEntry.setAttribute("class", "subMenuEntry");
warum zweimal?
Ich benutze hier: l_subEntry.className="subMenuEntry" .Gruß, Jürgen