js中给div绑定click事件,在事件触发时判断点击的元素是否为span,如果是则弹出对话框
时间: 2023-05-25 15:04:30 浏览: 181
可以使用以下代码实现:
```
var divElement = document.getElementById("myDiv");
divElement.addEventListener("click", function(event) {
if (event.target.tagName === "SPAN") {
alert("您点击了span!");
}
});
```
代码解析:
- 首先获取了一个 id 为 "myDiv" 的 div 元素;
- 然后使用 addEventListener() 给这个元素绑定了一个 click 事件监听器;
- 在事件监听器的回调函数中,使用 event.target 获取到触发事件的元素;
- 通过判断元素的 tagName 属性,判断是否为 span 元素;
- 如果是,则弹出一个对话框。
相关问题
用js实现给div绑定click事件,在事件触发时判断点击的元素是否为span,如果是则弹出对话框
可以通过以下代码实现:
```javascript
const div = document.querySelector('div');
div.addEventListener('click', function (event) {
const target = event.target;
if (target.nodeName === 'SPAN') {
alert('点击了span!');
}
});
```
首先获取到要绑定事件的div元素,然后使用addEventListener方法绑定click事件回调函数。在回调函数中,通过event.target获取到被点击的元素,判断其nodeName是否为'SPAN',如果是则弹出对话框。
JS 已知页面结构<div id="box"><a href="#">a</a><span>b</span><p>c</p></div>,给div绑定click事件,在事件触发时判断点击的元素是否为span,如果是则弹出对话框
可以使用addEventListener方法为div元素绑定click事件,然后在事件处理函数中判断点击的元素是否为span。代码如下:
```javascript
var box = document.getElementById("box");
box.addEventListener("click", function(event) {
if (event.target.tagName.toLowerCase() === "span") {
alert("点击了span元素");
}
});
```
在事件处理函数中,可以通过event.target属性获取到被点击的元素。然后可以使用tagName属性获取被点击元素的标签名,再通过toLowerCase方法将其转换为小写字母,最后与"span"比较即可判断是否为span元素。如果是,则弹出对话框。