JQuery рассчитать количество элементов списка, затем умножить это на число и установить в качестве ширины - PullRequest
1 голос
/ 18 октября 2010

Я пытаюсь установить динамическую ширину равной ul.sections, проверяя, сколько существует li's, и умножить это на ширину li ($("ul.sections").width()), которая в данном случае составляет 910 пикселей.

Я не уверен, как вернуть текущее количество видимых элементов списка.Может быть, что-то вроде этого?

$('ul.sections').width($("ul.sections li").length() * $("ul.sections li").width());

Что, очевидно, еще не работает.Есть идеи?

Ответы [ 3 ]

1 голос
/ 18 октября 2010

есть : видимый jQuery Selector

чтобы увидеть все <li> в ul.sections

$("ul.sections li:visible")

так что теперь вы можете установить ширину

$("ul.sections").width($("ul.sections li:visible").length * $("ul.sections").width()));
1 голос
/ 18 октября 2010

использование size()

http://api.jquery.com/size/

1 голос
/ 18 октября 2010

.length - это свойство, а не метод, поэтому просто используйте $("ul.sections li").length, например:

$('ul.sections').width($("ul.sections li").length * $("ul.sections").width());

Если у вас есть несколько разделов, это будет версия jQuery 1.4+:

$('ul.sections').width(function(i, w) { return $(this).find('li').length * w; });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...