WedX - журнал о программировании и компьютерных науках

Javascript, как я могу получить конкретного ребенка из объекта/элемента, возвращаемого elementFromPoint()?

Есть ли способ получить дочерний элемент из элемента/объекта, возвращаемого функцией elementFromPoint(x, y);

Предположим, у меня есть следующее утверждение,

var elem = document.elementFromPoint(x, y);

И давайте предположим, что элемент, возвращенный и сохраненный в переменной elem, будет иметь следующую структуру:

<section class="wrapper">
      some unwraped text
      <div class="hidden">
           <img />
      </div>
</section>

Есть ли возможность получить тег img из оболочки этого раздела? Я хочу получить его и клонировать с помощью jQuery, а затем добавить клон в другой элемент. Div, обертывающий тег изображения, имеет свойство css display: none; который будет скрывать изображение, я хотел бы скопировать это изображение и показать его внутри какого-либо другого элемента.

Однако мне нужно найти способ получить тег img, прежде чем я смогу его клонировать и добавить дальше.

ОТРЕДАКТИРОВАНО

Вот как я пытаюсь использовать объект elem, мне нужен дочерний img из него, а не весь возвращаемый элемент

  $('#unique > img').remove();
  $('#unique').append($(elem > child)
        .clone()
        .children()
        .end());

Я считаю, что мне не нужна функция children(), если я могу получить правильный элемент.

Благодарить ...


  • Или $("img", elem), чтобы указать аргумент context селектора. 01.08.2013

Ответы:


1

Что в итоге получается elem? <section>?

$(elem).find('.hidden img')

Один из его детей?

$(elem).closest('.wrapper').find('.hidden img')
01.08.2013
  • поэтому элемент, возвращаемый elementFromPoint(x, y), представляет собой весь раздел HTML, упомянутый в моем вопросе, другими словами, после вызова функции элемент будет содержать все эти теги. Я хотел бы извлечь тег img из элемента elem 01.08.2013
  • @twimB: Так используй $(elem).find('.hidden img')? 01.08.2013

  • 2

    Проверьте, работает ли это:

    $("img",$(document.elementFromPoint(x, y)))
    

    or

    $(document.elementFromPoint(x, y)).find("img")
    
    01.08.2013
  • Большое спасибо, это работает со вторым, я попробую и ваш первый вариант. 01.08.2013
  • Новые материалы

    Объяснение документов 02: BERT
    BERT представил двухступенчатую структуру обучения: предварительное обучение и тонкая настройка. Во время предварительного обучения модель обучается на неразмеченных данных с помощью..

    Как проанализировать работу вашего классификатора?
    Не всегда просто знать, какие показатели использовать С развитием глубокого обучения все больше и больше людей учатся обучать свой первый классификатор. Но как только вы закончите..

    Работа с цепями Маркова, часть 4 (Машинное обучение)
    Нелинейные цепи Маркова с агрегатором и их приложения (arXiv) Автор : Бар Лайт Аннотация: Изучаются свойства подкласса случайных процессов, называемых дискретными нелинейными цепями Маркова..

    Crazy Laravel Livewire упростил мне создание электронной коммерции (панель администратора и API) [Часть 3]
    Как вы сегодня, ребята? В этой части мы создадим CRUD для данных о продукте. Думаю, в этой части я не буду слишком много делиться теорией, но чаще буду делиться своим кодом. Потому что..

    Использование машинного обучения и Python для классификации 1000 сезонов новичков MLB Hitter
    Чему может научиться машина, глядя на сезоны новичков 1000 игроков MLB? Это то, что исследует это приложение. В этом процессе мы будем использовать неконтролируемое обучение, чтобы..

    Учебные заметки: создание моего первого пакета Node.js
    Это мои обучающие заметки, когда я научился создавать свой самый первый пакет Node.js, распространяемый через npm. Оглавление Глоссарий I. Новый пакет 1.1 советы по инициализации..

    Забудьте о Matplotlib: улучшите визуализацию данных с помощью умопомрачительных функций Seaborn!
    Примечание. Эта запись в блоге предполагает базовое знакомство с Python и концепциями анализа данных. Привет, энтузиасты данных! Добро пожаловать в мой блог, где я расскажу о невероятных..


    Для любых предложений по сайту: [email protected]