jQuery загружает первые десять элементов с определенным классом - PullRequest
2 голосов
/ 28 декабря 2011

Страница, которую я пытаюсь загрузить, выглядит примерно так (хотя количество абзацев с классом «текст» каждый раз отличается):

<html>
<body>
<div id="container">
<p class="text">1</p>
<p class="text">2</p>
<p class="text">3</p>
<p class="text">4</p>
<p class="text">5</p>
<p class="text">6</p>
<p class="text">7</p>
<p class="text">8</p>
<p class="text">9</p>
<p class="text">10</p>
<p class="text">11</p>
<p class="text">12</p>
<p class="text">13</p>
<p class="text">14</p>
<p class="text">15</p>
<p class="text">16</p>
<p class="text">17</p>
<p class="text">18</p>
<p class="text">19</p>
<p class="text">20</p>
<p class="sometext">Some other text here</p>
</div>
</body>
</html>

Можно ли загрузить только первые десять абзацев с помощью jQuery с чем-то вроде $('#text').load('other_file.html #container .p');?

Ответы [ 4 ]

5 голосов
/ 28 декабря 2011

Используйте селектор :lt(). Он основан на 0, поэтому p:lt(10) должен загрузить первые 10 p элементов.

$('#text').load('other_file.html #container p:lt(10)');

Имейте в виду, что весь ответ все еще загружается, с помощью селектора отображается только подраздел.

2 голосов
/ 28 декабря 2011

Возможно, вы захотите использовать селектор :lt():

$('#text').load('other_file.html #container p:lt(10)');
1 голос
/ 28 декабря 2011

попробуйте использовать селектор :lt()

http://api.jquery.com/lt-selector/

$('#text').load('other_file.html #container p:lt(10)')
0 голосов
/ 28 декабря 2011

Вы можете использовать селектор в стиле CSS3 для загрузки только первых 10 элементов:

$('#text').load('other_file.html #container .p:nth-child(-n+10)');

Это загрузит первые 10 p элементов в элементе #container.

Документы: http://api.jquery.com/nth-child-selector/ (обратите внимание, что nth-child начинается с единицы, а не с нуля)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...