为了账号安全,请及时绑定邮箱和手机立即绑定

如何使元素单击(针对整个文档)?

如何使元素单击(针对整个文档)?

眼眸繁星 2019-12-13 10:14:12
我想在单击的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()。


查看完整回答
反对 回复 2019-12-13
?
江户川乱折腾

TA贡献1851条经验 获得超5个赞

window.onclick = e => {

    console.log(e.target);

    console.log(e.target.tagName);

从单击元素获取文本


window.onclick = e => {

    console.log(e.target.innerText);


查看完整回答
反对 回复 2019-12-13
  • 3 回答
  • 0 关注
  • 555 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信