javascript - 如何在没有 jQuery 的情况下获取事件目标

标签 javascript html

我一直在尝试从 mouseenter 事件中获取目标(<li> 元素),但到目前为止没有成功!

代码:

<ul id="ul">
    <li>1</li>
    <li>2</li>
    <li>3</li>
    <li>4</li>
    <li>5</li>
</ul>

<script>
    var ul = document.getElementById('ul');

    ul.onmouseenter = function(e) {
        console.log(e.target);
    };
</script>

不幸的是,控制台一直在打印 <ul />元素。有什么建议吗?

最佳答案

这是因为 onmouseenter事件不是“冒泡”事件,因此它只会在您输入 UL 时触发元素,而不是当您输入嵌套元素时,例如 LI元素。

因此 e.targetthis元素都将是 UL .

如果您使用 onmouseover相反它会冒泡,所以你会得到 LI作为 e.target当输入 LI元素。

关于javascript - 如何在没有 jQuery 的情况下获取事件目标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19395287/

相关文章:

javascript - 在 Firebase 中将电话号码设置为主键并防止重复

javascript - 如何将弹出网站的 html 转换为移动兼容网站?

ruby-on-rails - 如何从 Rails 4 中的多个非关联(非嵌套)模型创建一个表单?

javascript - 一旦 div 离开屏幕,将其隐藏并使用户保持在页面上的相同位置

javascript - 在模式中显示 AJAX 确认

java - 当键是数字时解析 json 时出现解析错误

javascript - 数字分组正则表达式

html - 如何使用 html5 嵌入视频?

Firefox Div 对齐不起作用;适用于 Chrome、IE 和 Safari

javascript - 使用 Jquery 或 Javascript 解析字符串