眼眸繁星
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()。

江戶川亂折騰
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
提交
取消