javascript - 如何知道哪个元素被点击

标签 javascript dom onclick classname

我有这个代码:

( function() {
  var i, ii, e = Elements.Select('.drop');
  for ( i = 0, ii = e.length; i < ii; i++ ) {
    e [ i ].onclick = function () {
      alert ( e [ i ].getAttribute('data-open') );
    }
  }
})();

我所做的是,当单击 className 为“drop”的元素时,然后提醒我正在单击的元素的属性。但不起作用。

这段代码是我用来通过她的类名选择一个元素的代码。 不要太注意,它只是向我们展示只是向他们展示我如何选择元素。

(function() {
  Select : function ( element ) { 
  var object, index  = element.substr( 0, 1 ), name = element.substr( 1, element.length ),      clases = [ ], i, all = document.body.getElementsByTagName("*"); 
  switch ( index ) { 
    case '.' : 
      for ( i = 0; i < all.length; i ++ ) { 
        if ( all [ i ].className == name ) {   
          clases.push( all [ i ] ); 
        } 
      } 
      object = clases; 
    break;  
    return object 
    } 
  } 
})();

请问答案?

最佳答案

( function() {
  var i, ii, e = Elements.Select('.drop');
  for ( i = 0, ii = e.length; i < ii; i++ ) {
    e [ i ].onclick = function () {
      //by the time that this gets executed, the for loop is ended, thus i equals ii
      // instead of using e[i]... try using this : 
      alert (this.getAttribute('data-open'));
      alert ( e [ i ].getAttribute('data-open') );
    }
  }
})();

关于javascript - 如何知道哪个元素被点击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10022934/

相关文章:

Javascript 'this'

javascript - Node.js 为 heroku 构建 json api

javascript - 我怎样才能使这个正则表达式不导致 "catastrophic backtracking"?

html - 查看动态生成的 DOM 和 CSS

javascript - 如何获取相对于滚动框的 DOM 元素 [x,y] 坐标?

javascript - 删除所有 DOM 元素中隐藏的属性,除了给出索引的元素使用 Javascript 函数不起作用

javascript - 单击图像不起作用

页面加载时发生的javascript onclick

javascript - 我需要帮助从 Canvas 中删除图像

php - 在 javascript 上使用 onClick 增加变量值并在 HTML 表单上显示新值