Вы можете сделать это:
if($('#THIS_DIV','#THIS_PARENT').length == 1) {
}
Указывая , определяя контекст для поиска (второй аргумент), мы в основном говорим: «ищите элемент с идентификатором #THIS_DIV
внутри элемента с идентификатором #THIS_PARENT
». Это самый лаконичный способ сделать это с помощью jQuery.
Мы могли бы также написать это, используя find
, если это имеет для вас больше смысла:
if($('#THIS_PARENT').find('#THIS_DIV').length == 1) {
}
Или так, используя parents
, если вы хотите искать от ребенка вверх:
if($('#THIS_DIV').parents('#THIS_PARENT').length == 1) {
}
Все это должно работать нормально. Бит length
необходим для того, чтобы длина «поиска» была> 0. Я, конечно, лично рекомендовал бы использовать первый, так как он самый простой.
Кроме того, если вы ссылаетесь на элемент по идентификатору, нет необходимости (хотя, конечно, это нормально) предварять селектор именем тега. Что касается скорости, то это не очень помогает, поскольку jQuery будет использовать встроенный getElementById()
для внутреннего использования. Использование имени тега важно только при выборе по классу, поскольку div.myclass
намного, намного быстрее, чем .myclass
, если только <div>
элементов будут иметь определенный класс.