Cómo agregar una categoría de tercer nivel a la lista desplegable de desplazamiento

8

Tengo una larga lista desplegable de subcategorías que también incluye una subcategoría de tercer nivel. He agregado usando la referencia de trucos css: https://css-tricks.com/long-dropdowns-solution/ ahora no puedo mostrar la categoría de tercer nivel ... tiene que mostrar el lado de la subcategoría. proporcionarme pautas adecuadas

ingrese la descripción de la imagen aquí

rashmi sm
fuente

Respuestas:

2

para el tercer nivel

        <script>
var maxHeight = 300;
var maxwidth
jQuery.noConflict();
jQuery(function(){

jQuery("li.level0").hover(function() {

var jQuerycontainer = jQuery(this),
jQuerylist = jQuerycontainer.find("ul.level0"),
jQueryanchor = jQuerycontainer.find("a"),
height = jQuerylist.height() * 1.1, // make sure there is enough room at the bottom
multiplier = height / maxHeight; // needs to move faster if list is taller

// need to save height here so it can revert on mouseout
jQuerycontainer.data("origHeight", jQuerycontainer.height());

// so it can retain it's rollover color all the while the dropdown is open
jQueryanchor.addClass("hover");

// make sure dropdown appears directly below parent list item
jQuerylist
.show()
.css({

paddingTop: jQuerycontainer.data("origHeight"),
position:'absolute',
});

// don't do any animation if list shorter than max
if (multiplier > 1) {
jQuerycontainer
.css({
height: maxHeight,
overflow: "hidden",



})
.mousemove(function(e) {
var offset = jQuerycontainer.offset();
var relativeY = ((e.pageY - offset.top) * multiplier) - (jQuerycontainer.data("origHeight") * multiplier);
if (relativeY > jQuerycontainer.data("origHeight")) {
jQuerylist.css("top", -relativeY +jQuerycontainer.data("origHeight"));
};
});
}

}, function() {

var jQueryel = jQuery(this);

// put things back to normal
jQueryel
.height(jQuery(this).data("origHeight"))
.find("ul")
.css({ })
.hide()
.end()
.find("a")
.removeClass("hover");

})});
jQuery (function() {
jQuery("li.level1").hover(function() {

var jQuerycontainer = jQuery(this),
jQuerylist = jQuerycontainer.find("ul.level1"),
jQueryanchor = jQuerycontainer.find("a"),
height = jQuerylist.height() * 1.1, // make sure there is enough room at the bottom

multiplier = height / maxHeight; // needs to move faster if list is taller

// need to save height here so it can revert on mouseout
jQuerycontainer.data("origHeight", jQuerycontainer.height());

// so it can retain it's rollover color all the while the dropdown is open
jQueryanchor.addClass("hover");

// make sure dropdown appears directly below parent list item
jQuerylist
.show()
.css({

//paddingTop: jQuerycontainer.data("origHeight"),
position:'relative',
clear:'both',
});

// don't do any animation if list shorter than max


}, function() {
var jQueryel = jQuery(this);

// put things back to normal
// jQueryel
// .height(jQuery(this).data("origHeight"))
// .find("ul")
// .css({ })
// .hide()
// .end()
// .find("a")
// .removeClass("hover");

})});

//Add down arrow only to menu items with submenus
// jQuery(".nav-primary > li:has('ul')").each(function() {
// jQuery(this).find("a:first").append("<img src='images/down-arrow.png' />");
// });
</script>
<style type="text/css">
ol.dropdown {
position: absolute;
width: 100%;
height: 60px;
}
ol.dropdown li {
background: none repeat scroll 0 0 #ccc;
float: left;
font-weight: bold;
position: relative;
width: 180px;
}
ol.dropdown a:hover {
color: #000;
}
ol.dropdown li a {
color: #222;
display: block;
padding: 20px 8px;
position: relative;
z-index: 904;
}
ol.dropdown li a:hover, ol.dropdown li a.hover {
background: none repeat scroll 0 0 #f3d673;
position: relative;
}
ol.dropdown ul {

display: none;
left: 0;
position: absolute;
top: 0;
width: 100px;
z-index: 902;
}
ol.dropdown ul li {
background: none repeat scroll 0 0 #f6f6f6;
border-bottom: 1px solid #ccc;
color: #000;
font-weight: normal;
}
ol.dropdown ul li a {
background: none repeat scroll 0 0 #eee !important;
display: block;
}
ol.dropdown ul li a:hover {
background: none repeat scroll 0 0 #f3d673 !important;
display: block;
}
ol.dropdown ul li ul {

display: none;
left: 10px;
background-color: #ffc;
/*right: 0;*/



width: 160px;
z-index: 903;
}
ol.dropdown ul li ul li {
background: none repeat scroll 0 0 #f6f6f6;
border-bottom: 1px solid #ffc;
color: #000;
font-weight: normal;
}
ol.dropdown ul li ul li a {
background: none repeat scroll 0 0 #eee !important;
display: block;
}
ol.dropdown ul li ul li a:hover {
background: none repeat scroll 0 0 #f3d673 !important;
display: block;
}

</style>

ingrese la descripción de la imagen aquí

Qaisar Satti
fuente
¿ha agregado la función css y js
Qaisar Satti
como se
indicó
no funciona a mi lado ..
Qaisar Satti
no solo agregué las categorías de tercer nivel y puse css y función para que esté funcionando, verifique qué falta, intente alertar en la segunda función js que está funcionando o verifique su jerarquía html
Qaisar Satti
sin cambios se refleja .. Intenté todas las posibilidades
rashmi sm