我有一些jquery,它將計算我的菜單中的項目並將li分配給計算出的px寬度。使用jquery計算頁面中的第一級UL LI的數量
這裏是代碼:
$(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;
var itemWidth = Math.floor(menuWidth * (1/listItems)) - 40;
$('div#new-menu-lower ul li').css('width', itemWidth);
});
});
問題是listItems
顯示爲38項,它似乎計算每一個裏這是不對的。它應該只計算第一個ul的不是子元素。
我能做些什麼來阻止這種情況的發生?
使用直接子選擇器:「DIV#新菜單下> UL禮」 – Th0rndike
@ Th0rndike他需要一個'UL> li'孩子選擇太多,否則它會仍然返回_all_'li'元素。 – Alnitak