2010-07-17 3 views
1

в JQuery мы можем найти внутренний класс или что-то еще с

$("#id xxxxxx") 

хх ... может быть что угодно.

Но я беру элемент, это, как показано ниже:

$(".something").bind("click",function(){ 
    $(this).find("...... 
}); 

и хотите взять внутренний элемент что-то вроде: $(this + " .divClassNameOrFilter")

Я могу взять элемент с $(this).find(".divClassNameOrFilter)

Но после того, как я нашел то, что будет массивом, и я не могу продолжить с $(this).find(".divClassNameOrFilter).css(.....

я должен взять первый элемент с [0] и оберните его снова $(...) так: $($(this).find(".divClassNameOrFilter)[0]).css(.....

Есть ли способ, чтобы не сделать, как я говорил выше?

ответ

1

Вы можете использовать .eq() так:

$(this).find(".divClassNameOrFilter").eq(0).css(...); 

Или использовать :first, как это:

$(this).find(".divClassNameOrFilter:first").css(...); 

Как и в сторону, есть и другие filter functions и selectors, а также.

+0

ой, вы добавили дополнительный, чтобы сделать то же самое, как у меня ... – redsquare

+2

@redsquare - Был ли я редактировать *, а * Вы отправили? Не * на его основе *, да ... Мне нравится, чтобы мой ответ был как можно более полным. Я всегда буду продолжать добавлять любую соответствующую информацию в ответ *, как я думаю об этом *. ': first' не является неясным селектором, о котором я никогда не слышал, я * делаю * однако, чтобы опубликовать ссылку на API при использовании функций/селекторов, и мне требуется немного больше времени для редактирования, так как я это делаю. –

+0

сначала было достаточно для меня, но eq (x) лучше, чем сначала изучить другой метод ... Спасибо ... – uzay95

1

Это должно быть возможно с помощью .first():

$(this).find(".divClassNameOrFilter").first().css(.....