Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Все DOM элементы под другим элементом. Или в пределах координат. (https://javascript.ru/forum/events/64352-vse-dom-ehlementy-pod-drugim-ehlementom-ili-v-predelakh-koordinat.html)

xbit 05.08.2016 06:25

Все DOM элементы под другим элементом. Или в пределах координат.
 
Добрый день.

Есть координаты воображаемого прямоугольника (position: absolute) и нужно получить все элементы/узлы дерева DOM, которые находятся под этим прямоугольником.

Собираюсь реализовать выделение элементов мышкой. Зажимаем левую кнопку мыши, тянем. Создается див с границей 1px dotted grey, растягивается по координатам курсора. Все элементы которые будут под этим дивом должны выделяться.

Объяснил криво, но тут то и объяснять нечего - в операционных системах мы так мышкой папки и файлы выделяем.

Помню был какой-то метод который позволял вроде как определять, какие элементы находятся под другим элементом, но найти не могу никак.

И такой момент: мне нужно 1) определить какие элементы находятся под другим элементом. 2) выбрать все элементы в пределах координат.

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

P. S. Без jQuery и библиотек плиз. Пишу native.

рони 05.08.2016 08:21

xbit,
нативное начало большого пути :)
http://javascript.ru/forum/misc/5196...tml#post343149

xbit 05.08.2016 08:27

Спасибо, сам выделятор я то сделаю ) делов то там немного. Вопрос в том, как понять, что этим выделятором выделили. Какие элементы под ним находятся. Есть идеи? Составлять матрицу координат всех элементов на странице очень не хочется - поиск по такому массиву, да еще на каждое движение мыши - ужас. Элементов будет много, можно считать не ограничено.

Что же делать, как же быть ?)

xbit 05.08.2016 08:31

Вот так в jQuery работает аналог. Сейчас читаю, вдупляюсь. Если вы поняли принцип - просьба подсказать.

https://github.com/endel/jquery.sele....selectable.js

рони 05.08.2016 08:44

Цитата:

Сообщение от xbit
Вот так в jQuery работает аналог.

увы я не понимаю что делает данный плагин и как устроен.

рони 05.08.2016 08:47

Цитата:

Сообщение от xbit
Составлять матрицу координат всех элементов на странице очень не хочется - поиск по такому массиву, да еще на каждое движение мыши - ужас. Элементов будет много, можно считать не ограничено.

согласен, но другого пути не знаю, может знатоки подтянутся подскажут путь покороче.

рони 05.08.2016 09:30

xbit,
http://javascript.ru/forum/showthread.php?p=400844

warren buffet 05.08.2016 10:05

Цитата:

Сообщение от xbit
Вот так в jQuery работает аналог

Щито? Эта хрень никакого отношения к выбору элементов рамочкой. Мой тебе совет: как только видишь ссылку на гитхаб - убегай подальше, переключай страницы поиска, но никогда не нажимай гитхабовские ссылки, никогда.

warren buffet 05.08.2016 10:08

Какой-то простенький примерчик и работает забавно http://nightlycoding.com/index.php/2...th-javascript/

В таких случаях сперва надо найти правильные ключевые слова, как народ называет эту фичу и как задает о ней вопросы, а потом уже само навалится http://stackoverflow.com/questions/2...-in-javascript

js rectangle selection ищи

рони 05.08.2016 10:23

Цитата:

Сообщение от warren buffet
Какой-то простенький примерчик и работает забавно

спасибо, интресно
Цитата:

Сообщение от warren buffet
само навалится

пример по ссылке во втором посте лучше


Часовой пояс GMT +3, время: 11:10.