通过使用此模块,只需将鼠标悬停在浏览器中,即可快速查看DOM米素的属性。基本上它是一个即时检查器。
将鼠标悬停在 DOM 米素上会显示其属性!
复制下面的整个代码块,并将其粘贴到浏览器 Web 控制台中。现在将鼠标悬停在你正在浏览的任何网页上。 看到了什么?
(function SpyOn() { const _id = 'spyon-container', _posBuffer = 3; function init() { document.body.addEventListener('mousemove', glide); document.body.addEventListener('mouseover', show); document.body.addEventListener('mouseleave', hide); } function hide(e) { document.getElementById(_id).style.display = 'none'; } function show(e) { const spyContainer = document.getElementById(_id); if (!spyContainer) { create(); return; } if (spyContainer.style.display !== 'block') { spyContainer.style.display = 'block'; } } function glide(e) { const spyContainer = document.getElementById(_id); if (!spyContainer) { create(); return; } const left = e.clientX + getScrollPos().left + _posBuffer; const top = e.clientY + getScrollPos().top + _posBuffer; spyContainer.innerHTML = showAttributes(e.target); if (left + spyContainer.offsetWidth > window.innerWidth) { spyContainer.style.left = left - spyContainer.offsetWidth + 'px'; } else { spyContainer.style.left = left + 'px'; } spyContainer.style.top = top + 'px'; } function getScrollPos() { const ieEdge = document.all ? false : true; if (!ieEdge) { return { left : document.body.scrollLeft, top : document.body.scrollTop }; } else { return { left : document.documentElement.scrollLeft, top : document.documentElement.scrollTop }; } } function showAttributes(el) { const nodeName = `<span>${el.nodeName.toLowerCase()}</span><br/>`; const attrArr = Array.from(el.attributes); const attributes = attrArr.reduce((attrs, attr) => { attrs += `<span>${attr.nodeName}</span>="${attr.nodeValue}"<br/>`; return attrs; }, ''); return nodeName + attributes; } function create() { const div = document.createElement('div'); div.id = _id; div.setAttribute('style', ` position: absolute; left: 0; top: 0; width: auto; height: auto; padding: 10px; box-sizing: border-box; color: #fff; background-color: #444; z-index: 100000; font-size: 12px; border-radius: 5px; line-height: 20px; max-width: 45%; ` ); document.body.appendChild(div); } init(); })();
此模块以IIFE的形式实现。这样只要需要一些 DOM 监视辅助,就可以将代码复制并粘贴到 Web 控制台中。将 div 插入到文档的正文中,并在正文上启用鼠标事宜侦听器。从目的米素中检索属性,将其简化为单个字符串,最后在工具提醒中显示。
你可以在这里找到源代码,希望你能做得更好!也许你不希望将其作为 IIFE 来实现,或者是去显示其他数据。
原文:https://dev.to/eddieaich/spy-on-the-dom-3d471.阿里云: 本站现在使用的是阿里云主机,平安/可靠/稳固。点击领取2000米代金券、领会最新阿里云产物的种种优惠流动点击进入
很多的家庭都是一个人带孩子,但是很多的孩子特别的调皮,就算孩子去学校了家长还是担心,有的时候孩子生病了一个人带孩子的宝妈也是特别的难过,那么辛辛苦苦带孩子的宝妈怎么发发朋友圈倾诉自己的苦闷呢?尤其是碰...
我不知道“流量红利”“流量枯竭”“流量进口”“流量焦急”之类的车轱辘话还能红多久,但有一点可以确定,尊重贸易本质的那一批公司从来都处在这种周期之外。 2020年了,没想到尚有人认为,手上攥着大把流量...
本文导读目录: 1、那些所谓的黑客是不是骗人的 2、现在中国学生很多多才多艺的,还有很多像Tom表哥这种弄网络的,是不是那为什么中国的科技都是抄袭并且 3、黑客有真的吗 4、想知道真的有黑...
受疫情影响,越来越多的家居建材行业开始寻找新的破局点,调整营销方式。其中,线上互动营销,成为了行业的普遍选择。 “装修一次起码要用10年” “中国平均7年换一次房子” “消费者只有在产生需求的时候才...
合谷穴位位置图(合谷是个长寿穴,有事没事多捏捏!) 针灸书中有一个四大总穴歌,其中之一就有合谷。合谷穴不仅是个总穴,还是个长寿要穴,更是百思特网个急救要穴。像这样好的穴位,我们怎么能够“放过它”!...
#广州警方发布# 广州天河警方今天(10月31日)通报:10月31日10时许,天河区岗顶附近有一名男子持刀伤人,随后跳楼自杀。接报警后,天河警方迅速派员到场处置。经初步调查,犯罪嫌疑人赵某(35岁...