gpt4 book ai didi

javascript - jquery 计算的列表项未正确显示

转载 作者:行者123 更新时间:2023-11-30 13:16:43 25 4
gpt4 key购买 nike

我有一些 Jquery,它会计算 UL 的宽度,然后用它除以列表项的数量,给它们一个值,这样菜单就适合整个宽度。

问题是我的菜单项没有完全显示,因为代码正在计算列表项而不是 A 中的字符串长度。

Cartridges/Cylinders 显示不正确,Garden & DIY 换行到下一行。

HTML:

<div class="container">
<div id="new-menu-lower">
<ul class="menuul">
<li class="menuli">
<a href="/test.aspx">Barbecues</a>
</li>
<li class="menuli">
<a href="/test.aspx">Stoves</a>
</li>
<li class="menuli">
<a href="/test.aspx">Lanterns</a>
</li>
<li class="menuli">
<a href="/test.aspx">Cartridges/Cylinders</a>
</li>
<li class="menuli">
<a href="/test.aspx">Coolers</a>
</li>
<li class="menuli">
<a href="/test.aspx">Boats</a>
</li>
<li class="menuli">
<a href="/test.aspx">Airbeds</a>
</li>
<li class="menuli">
<a href="/test.aspx">Garden & DIY</a>
</li>
<li class="menuli">
<a href="/test.aspx">Toilets</a>
</li>
</ul>
</div>
</div>

JQUERY:

//set the menu li sizes once everything has loaded.
$(document).ready(function() {
$('div#new-menu-lower ul li').css('width', ($('div#new-menu-lower ul').width() / $('div#new-menu-lower ul li').length));
$(function() {
var menuWidth = $('div#new-menu-lower ul').width();
var listItems = $('div#new-menu-lower > ul > li').length;
alert('The UL is calculated at: ' + menuWidth + 'px');
var itemWidth = Math.floor(menuWidth * (1 / listItems)) - 20;
$('div#new-menu-lower ul li').css('width', itemWidth);
});
});

CSS:

div.container
{
clear: both;
margin: 10px auto 0;
width:960px;
border:1px solid red;
height:700px;
}

div#new-menu-lower {
border-radius: 3px 3px 3px 3px;
border-top: 0 solid lightgrey;
margin: 0 8px 10px;
}

#new-menu-lower ul {
border: 1px solid orange;
display: block;
height: 27px;
}

#new-menu-lower ul li:first-child {
border-left: 0 solid lightgrey !important;
border-radius: 7px 0 0 7px;
}

#new-menu-lower ul li {
background-image: url("http://i45.tinypic.com/16if95z.png");
background-repeat: repeat;
border-right: 0 solid lightgrey !important;
float: left;
height: 27px;
padding-left: ;
padding-right:;
text-align: center;
width: 168px;
margin-left:1px;
}

演示: http://jsfiddle.net/rM9MW/45/

最佳答案

我认为您可以使用更简单的解决方案。看看这个jsfiddle这是我为您创建的。

你不需要使用jquery,只需要使用css。

关于javascript - jquery 计算的列表项未正确显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11773750/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com