我想在单击的HTML文档中获取当前元素(无论是哪个元素)。我在用:$(document).click(function () { alert($(this).text());});但是非常奇怪的是,我得到了整个文档的文本,而不是单击的元素。如何仅获取我单击的元素?例<body> <div class="myclass">test</div> <p>asdfasfasf</p></body>如果单击“测试”文本,我希望能够$(this).attr("myclass"在jQuery中使用读取属性。
3 回答
慕尼黑8549860
TA贡献1818条经验 获得超11个赞
您需要使用event.targetwhich是最初触发事件的元素。在this您的示例代码指document。
在jQuery中,就是...
$(document).click(function(event) {
var text = $(event.target).text();
});
没有jQuery ...
document.addEventListener('click', function(e) {
e = e || window.event;
var target = e.target || e.srcElement,
text = target.textContent || target.innerText;
}, false);
另外,请确保是否需要使用<IE9 attachEvent()代替addEventListener()。
江户川乱折腾
TA贡献1851条经验 获得超5个赞
window.onclick = e => {
console.log(e.target);
console.log(e.target.tagName);
}
从单击元素获取文本
window.onclick = e => {
console.log(e.target.innerText);
}
添加回答
举报
0/150
提交
取消