SHOW:
|
|
- or go back to the newest paste.
1 | function ElementSelector_Init(){ | |
2 | var Body = document.getElementsByTagName("body")[0]; | |
3 | ||
4 | function MoveSelection(e){ | |
5 | var ev = e ? e : event; | |
6 | var Element = ev.srcElement ? ev.srcElement : ev.target; | |
7 | ||
8 | // Если ивент приходится на тот самый слой с рамкой, прерываемся | |
9 | // TODO: Проблема здесь | |
10 | if (Element == document.getElementById("ElementSelector_SelectionMain")) | |
11 | return; | |
12 | ||
13 | var SelectionMain; | |
14 | // Если слой с рамкой уже имеется, выбираем его | |
15 | if (document.getElementById("ElementSelector_SelectionMain")) | |
16 | SelectionMain = document.getElementById("ElementSelector_SelectionMain"); | |
17 | // Иначе создаем новый | |
18 | else { | |
19 | SelectionMain = document.createElement("div"); | |
20 | SelectionMain.setAttribute("id", "ElementSelector_SelectionMain"); | |
21 | SelectionMain.style.position = "absolute"; | |
22 | } | |
23 | ||
24 | // Перемещаем к позиции над элементом | |
25 | var Position = ElementSelector_GetOffset(Element); | |
26 | SelectionMain.style.top = Position.top + "px"; | |
27 | SelectionMain.style.left = Position.left + "px"; | |
28 | SelectionMain.style.width = Element.offsetWidth + "px"; | |
29 | SelectionMain.style.height = Element.offsetHeight + "px"; | |
30 | Body.appendChild(SelectionMain); | |
31 | } | |
32 | // Вешаем ивенты на действия с мышкой | |
33 | document.addEventListener("mouseover", MoveSelection); | |
34 | document.addEventListener("mousemove", MoveSelection); | |
35 | document.addEventListener("mouseout", MoveSelection); | |
36 | } |