PageSourceSearch

https://support.ambidata.com/scripts/TooltipPesquisa.js?v=KuTReXEiPDtQmJ7gJOlSZAgHHE-Kzq4UH6tFxYvfZ-Y

js ambidata.com collected 2026-10-08 01:15:01 UTC 2,502 bytes, 85 lines download raw bytes

1window.TooltipPesquisa = {
2    _refDiv: null,
3    _popupId: null,
4    _handlersBound: false,
5
6    criarPopup: function (refDiv, idPopup, html) {
7        if (!refDiv || !html)
8            return false;
9
10        const elementoPesquisa = document.getElementById(refDiv);
11        if (!elementoPesquisa)
12            return false;
13
14        let popup = document.getElementById(idPopup);
15        if (popup)
16            popup.remove();
17
18        popup = document.createElement('div');
19        popup.id = idPopup;
20        popup.className = 'tooltipPesquisa';
21        popup.style.position = 'fixed';
22        popup.style.zIndex = '1100';
23        popup.style.display = 'none';
24        popup.innerHTML = html;
25        document.body.appendChild(popup);
26
27        this._refDiv = refDiv;
28        this._popupId = idPopup;
29
30        if (!this._handlersBound) {
31            this._handlersBound = true;
32            document.addEventListener('mouseover', (e) => this._onMouseOver(e));
33            document.addEventListener('mouseout', (e) => this._onMouseOut(e));
34        }
35
36        return true;
37    },
38
39    _obterElementoPesquisa: function () {
40        return this._refDiv ? document.getElementById(this._refDiv) : null;
41    },
42
43    _obterPopup: function () {
44        return this._popupId ? document.getElementById(this._popupId) : null;
45    },
46
47    _estaNoCampo: function (node) {
48        const el = this._obterElementoPesquisa();
49        return !!(el && node && el.contains(node));
50    },
51
52    _posicionarEMostrar: function () {
53        const el = this._obterElementoPesquisa();
54        const popup = this._obterPopup();
55        if (!el || !popup)
56            return;
57
58        const rect = el.getBoundingClientRect();
59        popup.style.left = (rect.left + rect.width - 200) + 'px';
60        popup.style.top = (rect.top + rect.height + 10) + 'px';
61        popup.style.display = 'block';
62    },
63
64    _esconder: function () {
65        const popup = this._obterPopup();
66        if (popup)
67            popup.style.display = 'none';
68    },
69
70    _onMouseOver: function (e) {
71        if (!this._estaNoCampo(e.target))
72            return;
73        if (this._estaNoCampo(e.relatedTarget))
74            return;
75        this._posicionarEMostrar();
76    },
77
78    _onMouseOut: function (e) {
79        if (!this._estaNoCampo(e.target))
80            return;
81        if (this._estaNoCampo(e.relatedTarget))
82            return;
83        this._esconder();
84    }
85};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.