Knockout JS 防止在特定子项上触发点击事件
Knockout JS prevent click event triggering on a specific child
我看到过类似的问题,但我无法使用 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()' 不是函数。
我做错了什么?
您必须使用 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 解决它 '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()' 不是函数。
我做错了什么?
您必须使用 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>