Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/424.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何创建具有下拉菜单的全长导航菜单_Javascript - Fatal编程技术网

Javascript 如何创建具有下拉菜单的全长导航菜单

Javascript 如何创建具有下拉菜单的全长导航菜单,javascript,Javascript,我发现这个脚本非常有效,直到你在等式中引入嵌套菜单。 如何将脚本排除在嵌套菜单之外?有没有办法给嵌套菜单一个类或id并将其从脚本中排除?如果我正确理解了您的问题,您可以将一个类添加到顶级菜单并排除所有不包含的内容: HTML: 关于我们 我们的产品 常见问题解答 联系方式 登录 Javascript: function alignMenuItems(){ var totEltWidth = 0; var menuWidth = $('ul.menu')[0].offset

我发现这个脚本非常有效,直到你在等式中引入嵌套菜单。


如何将脚本排除在嵌套菜单之外?有没有办法给嵌套菜单一个类或id并将其从脚本中排除?

如果我正确理解了您的问题,您可以将一个类添加到顶级菜单并排除所有不包含的内容: HTML:

    关于我们
  • 我们的产品
  • 常见问题解答
  • 联系方式
  • 登录
Javascript:

function alignMenuItems(){
    var totEltWidth = 0;
    var menuWidth = $('ul.menu')[0].offsetWidth;
    var availableWidth = 0;
    var space = 0;

    var elts = $('.menu li.top-level'); //<-
    elts.each(function(inx, elt) {
        // reset paddding to 0 to get correct offsetwidth
        $(elt).css('padding-left', '0px');
        $(elt).css('padding-right', '0px');

        totEltWidth += elt.offsetWidth;
    });

    availableWidth = menuWidth - totEltWidth;

    space = availableWidth/(elts.length);

    elts.each(function(inx, elt) {
        $(elt).css('padding-left', (space/2) + 'px');
        $(elt).css('padding-right', (space/2) + 'px');
    });
}
函数alignMenuItems(){
var-totEltWidth=0;
var menuWidth=$('ul.menu')[0].offsetWidth;
var availableWidth=0;
var空间=0;

var elts=$('.menu li.top-level');//如果我正确理解了您的问题,您可以向顶级菜单添加一个类,并排除所有不包含的内容: HTML:

    关于我们
  • 我们的产品
  • 常见问题解答
  • 联系方式
  • 登录
Javascript:

function alignMenuItems(){
    var totEltWidth = 0;
    var menuWidth = $('ul.menu')[0].offsetWidth;
    var availableWidth = 0;
    var space = 0;

    var elts = $('.menu li.top-level'); //<-
    elts.each(function(inx, elt) {
        // reset paddding to 0 to get correct offsetwidth
        $(elt).css('padding-left', '0px');
        $(elt).css('padding-right', '0px');

        totEltWidth += elt.offsetWidth;
    });

    availableWidth = menuWidth - totEltWidth;

    space = availableWidth/(elts.length);

    elts.each(function(inx, elt) {
        $(elt).css('padding-left', (space/2) + 'px');
        $(elt).css('padding-right', (space/2) + 'px');
    });
}
函数alignMenuItems(){
var-totEltWidth=0;
var menuWidth=$('ul.menu')[0].offsetWidth;
var availableWidth=0;
var空间=0;

var elts=$('.menu li.top-level');//谢谢llia。不幸的是,这不起作用。基本上,除非您引入下面这样的嵌套列表,否则代码将起作用。
  • 关于我们
    • 分页1
    • 分页1
    • 分页1
    • 分页1
    • 我们的产品
    • 常见问题解答
    • 联系
    • 登录
我不确定如何让代码在注释中正确格式化。您想实现什么?是否希望主菜单具有下拉子菜单?谢谢llia。不幸的是,这不起作用。基本上,除非您引入如下嵌套列表,否则代码将起作用。
  • 关于我们
    • 分页1
    • 分页1
    • 分页1
    • 分页1
    • 我们的产品
    • 常见问题解答
    • 联系
    • 登录
我不确定如何让代码在注释中正确格式化。您想实现什么?是否希望主菜单具有下拉子菜单?