首页 > ko 用冒泡的方式 怎么给所有子元素a标签 绑定click 事件??

ko 用冒泡的方式 怎么给所有子元素a标签 绑定click 事件??

不想给所有的 a 都加上 data-bind="click:clickFN" 所以想用冒泡的方式实现

但是像如下这样:如果点击到 i 或 span 标签 那就出问题了 请问大神怎么解决???

<div id="div" data-bind="click:clickFn">
    <a class="item" id="1">
        <i></i>
        <span>链接1</span>
    </a>
    <a class="item" id="2">
        <i></i>
        <span>链接2</span>
    </a>
    <a class="item" id="3">
        <i></i>
        <span>链接3</span>
    </a>    
</div>

var viewModel =function() { var self = this; self.clickFn = function(item,event){ // 通过事件源判断 var e = event || window.event; var src = e.target || e.srcElement; // to do } }; var view = new viewModel(); ko.applyBindings(view);

foreach循环生成a标签


直接用foreach循环生成a标签


在外层绑定 click 事件,在事件监听器中检查下 event.target 是不是 a 元素。

【热门文章】
【热门文章】