Я хочу запустить скрипт на странице, который помещает каждый фрагмент текста, выделенный курсивом, в массив.
Насколько я понимаю, jQuery .find() вы не можете получить предметы по атрибутам, я прав?
.find()
Вам следует ознакомиться с методом filter(), который является отличной функцией jQuery. Вы можете определить функцию фильтра, которую вы можете использовать для уменьшения элементов в вашей коллекции jQuery до тех, которые соответствуют вашим потребностям.
filter()
Вам также необходимо использовать .map(), который является еще одним очень удобным методом, который может помочь вам создавать списки из ваших коллекций jQuery, определенных функцией, которую вы пишете. Используя .get(), вы можете создать простой массив Javascript из этого объекта списка jQuery.
.map()
.get()
Это базовая версия, которая будет собирать текстовое содержимое элементов, к которым применен font-style: italic:
font-style: italic
var arr = $('*') /*look at all elements*/ .filter(function () { /*filter these elements*/ return $(this).css('font-style') == 'italic'; /*only keep the italic*/ }) .map(function () { /*create a new object using these elements*/ return $(this).text(); /*store the text of each selected element*/ }) .get(); /*convert this to an array*/
jsFiddle Demo