Knockout JS 防止在特定子节点上触发点击事件
Posted
技术标签:
【中文标题】Knockout JS 防止在特定子节点上触发点击事件【英文标题】:Knockout JS prevent click event triggering on a specific child 【发布时间】:2016-01-15 09:28:41 【问题描述】:我看到有人问过类似的问题,但我无法使用 Knockout 'data-bind' 解决问题
我有一个父 div,里面有多个 div。在父 div 上,我有一个点击事件,我不想在具有其他事件处理的特定子 div 上触发。 我有这样的事情:
<div class='parent' dataBind='click: parentClicked'>
<div class='child' dataBind='click: childClicked'></div>
....some other stuff...
</div>
在我的视图模型中,我尝试过:
function parentClicked()
alert('parent clicked');
function childClicked(event)
alert('child clicked');
event.stopPropagation();
我知道'event.stopPropagation()'不是一个函数。 我做错了什么?
【问题讨论】:
【参考方案1】:您必须使用clickBubble: false
。供参考:Preventing the event from bubbling
<div class='parent' dataBind='click: parentClicked'>
<div class='child' dataBind='click: childClicked, clickBubble: false'></div>
....some other stuff...
</div>
【讨论】:
以上是关于Knockout JS 防止在特定子节点上触发点击事件的主要内容,如果未能解决你的问题,请参考以下文章
如何防止点击子视图触发父视图上的 UITapGestureRecognizer?