搜索

首页  >  问答  >  正文

javascript - js事件委托,e.target的子元素如何触发事件?

实现点击table内的td时,把td绑定的data反馈出来。

<p class='wrapper'>
    <table>
        <thead>.......</thead>
        <tbody>
            <tr>
                <td data-data='1'>1</td>
                ....
                <td data-data='2'><font color='red'>2</font></td>
                ....
            </tr>
            ....
        </tbody>
    </table>
</p>

table是动态生成的,把事件绑定到wrapper上,用target触发标签td的时候,因为有的td内部有font这个子元素,点击到font元素的区域无法触发。

$wrapper = document.querySelector('.wrapper');
$wrapper.addEventListener('click', function(e){
    if(e.target.tagName.toLowerCase === 'td') {
        console.log(e.target.dataset.data);
    }
},false);
黄舟黄舟2756 天前491

全部回复(1)我来回复

  • 伊谢尔伦

    伊谢尔伦2017-05-19 10:28:36

    雷雷

    回复
    0
  • 取消回复