169 похожих чатов

Здравствуйте, мне нужно определить по какой половине(правой или левой) кликнули

на элемент. От чего мне отталкиваться чтобы определить, что это за половина?

П/с: извиняюсь за тупой вопрос, просто не нашёл инфу. Ну я новичок в JS.

12 ответов

19 просмотров

Элемент можно разделить так, как хочется, на две части, хотя бы ровно пополам. Поместить обе части рядом бесшовно так, чтобы это выглядело одним элементом внешне. А потом определить по какому элементу (первому или второму) кликнули нет проблем. Иначе придётся заморачиваться с чтением координат мыши и определением, где был клик.

Либо взять координаты у клика. Но тебе нужны будут координаты кнопки и надо будет высчитывать

Oberon
Элемент можно разделить так, как хочется, на две ч...

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

Dmitriy Deniskin
Либо взять координаты у клика. Но тебе нужны будут...

Т. е. мне искать как получить координаты элемента? Спасибо. Я просто не знал можно ли координаты элемента сопоставлять с координатами клика.

ロリが好きです マキシム (шипер Гани и Кэцы кароче)
Т. е. мне искать как получить координаты элемента?...

Ну элемент по оси x например от 1000 до 1200. Клик в 1000-1100 одна половина, 1100-1200 вторая. Ну это грубо и еще нужна ось y, но думаю ты понял.

Если кому-то нужно будет(мало ли): read.addEventListener('click', function (e) { if ((read.clientWidth / 2) < e.layerX) { console.log('right') } else if ((read.clientWidth / 2) > e.layerX) { console.log('left') } })

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
~ 2m21s  nix shell github:nixos/nixpkgs#stack ~  stack ghc -- --version error: … while calling the 'derivationStrict' builtin at /builtin/derivation.nix:...
Rebuild your mind.
6
Карта сайта