Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/401.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用纯javascript在单击时获取div或锚标记的id_Javascript_Html_Css - Fatal编程技术网

如何使用纯javascript在单击时获取div或锚标记的id

如何使用纯javascript在单击时获取div或锚标记的id,javascript,html,css,Javascript,Html,Css,我想获取或 javascript代码: var a = document.getElementsByClassName('a'); for(var b = 0; b <= a.length; b++){ a[i].onclick = function(e){ alert("id clicked"); } } var a=document.getElementsByClassName('a'); 对于(var

我想获取

javascript代码:

 var a = document.getElementsByClassName('a');
     for(var b = 0; b <= a.length; b++){
        a[i].onclick = function(e){
            alert("id clicked");
        }
     }
var a=document.getElementsByClassName('a');

对于(var b=0;b只需获取click事件的
target
对象的
id
属性。顺便说一下,
id
s在文档中应该是唯一的

这将获得页面上单击的任何元素的
id

document.addEventListener(“单击”),函数(evt){
日志(evt.target.id);
});

只需获取click事件的
目标对象的
id
属性。顺便说一下,
id
在文档中应该是唯一的

这将获得页面上单击的任何元素的
id

document.addEventListener(“单击”),函数(evt){
日志(evt.target.id);
});

我编辑您的源代码

var a=document.getElementsByClassName('reccl');
对于(var b=0;b

我编辑您的源代码

var a=document.getElementsByClassName('reccl');
对于(var b=0;b


.addEventListener()
是W3C DOM事件API标准,用于将事件处理函数附加到DOM对象的事件。
onclick
onXyz
可以工作,但与
.addEventListener()相比,它已经过时并且有缺点
。谢谢你,伙计……正是我要找的……我错过了上面的addeventlistener家伙,,,,干杯,伙计……
。addeventlistener()
是W3C DOM事件API标准,用于将事件处理函数附加到DOM对象的事件。
onclick
onXyz
将起作用,但与
.addEventListener()相比,它已经过时且存在缺点
。谢谢你,伙计……正是我要找的……我缺少了addeventlistener的家伙,,,,干杯,伙计……哇!有点多余。不需要从事件函数返回函数。而且,返回的函数的
e
参数总是
未定义的
。@ScottMarcus我的想法是:e.target将point to element您在父级中单击,[arg]将指向元素,该元素触发onclick事件。当然,该示例可以编写得更简单。^这有什么意义呢?只需为事件分配一个函数。无需返回新函数。这不会增加值,只会混淆代码。因为我不知道他想获取div(父级)的id或来自div(父级)的a(子级)单击。返回的新函数允许在for循环中正确获取b值。同样的事情可以通过
currentTarget
和事件委派来完成,这非常简单,不涉及任何循环或返回新函数。哇!比需要的稍多。无需从事件函数返回函数。而且,返回的函数nction的
e
参数始终有
undefined
。@ScottMarcus我的想法是:e.target将指向您在父项中单击的元素和[arg]将指向激发onclick事件的元素。当然,这个示例可以编写得更简单。^这有什么意义呢?只需为事件分配一个函数。无需返回新函数。这不会增加值,只会混淆代码。因为我不知道他想从div(父)获取div(父)的id或(子)的id单击。返回的新函数允许在for循环中正确获取b值。同样的事情可以通过
currentTarget
和事件委派来完成,这更简单,不涉及任何循环或返回新函数。通过什么或标记?通过什么或标记?
 var a = document.getElementsByClassName('a');
     for(var b = 0; b <= a.length; b++){
        a[i].onclick = function(e){
            alert("id clicked");
        }
     }