我发现Angular2有一种奇怪的行为:

(click)不是在向这个开火:

<div (click)="test()">test</div>

但它在这里起作用:

<div style="position: relative;" (click)="test()">test</div>

有人能解释这种行为吗?为什么需要设置位置样式才能触发(单击)?

我错过什么了吗?

推荐答案

你的代码片段看起来很好!

问题在于你的CSS风格.你的<div>可能继承了不同的position值,或者只是-goes behind another element which element blocks your 100 (does not allow it to be clicked).

通过将位置更改为relative,它可以工作,很可能是因为这个位置启用z-index,并将<div>移动到阻止它的另一个元素上.

这应该足以让你弄明白.但是如果你想要更详细的答案,请分享你的CSS.

Angular相关问答推荐

无法绑定到ngIf,因为它不是dis angular 17的已知属性

如何在投影项目组周围添加包装元素?

带逻辑的组件decorator 中的Angular 主机侦听器属性

角material 17 -如何从Style.scss中的主题中获取原色

如何在滑动滑块中获取当前项目的索引?

PathMatch full始终连接到参数化路径,即使完整路径不匹配也是如此

Angular 17:延迟加载带参数的独立组件?

元素上的Angular 管道链接不起作用

懒惰加载角404路径

Angular 17-getEnvironment InjectorProviders出现异常

基于RxJS的Angular 服务数据缓存

URL 更改但组件未在 Angular 导航中呈现

如何在 Angular 中顺序执行回调

Angular:为什么在 ngAfterContentInit 之后变量未定义?

如何重新加载当前页面?

react形式的formGroup.get与formGroup.controls

Angular 5 国际化

设置 Angular Material Tooltip 的字体大小

ngx-toastr,Toast 未在 Angular 7 中显示

如何以编程方式触发`valueChanges`?