properties - Ionic 2 - 属性绑定(bind)使应用程序不可见

标签 properties binding ionic2 opacity invisible

我对 ionic 有点菜鸟,所以这可能是一个愚蠢的问题。

按下按钮后,我想用黑色图像覆盖整个应用程序(或使所有内容不可见),但按钮仍然可以在下面工作。

我的应用程序基于选项卡示例应用程序。

到目前为止我已经尝试过以下方法

app.scss

.dark-overlay {
background-color: #000 !important;
opacity: 1;
}

my-tab.html

<ion-content class="dark-overlay" (ng-hide)="showOverlay">
....
<div tappable (click)="stealthMode()"><img src="assets/img/stealthMode.png" width="100%" scroll="false"></div>

我的tab.ts

stealthMode () {
this.myElements = document.querySelectorAll("dark-overlay");
for (var i = 0; i < myElements.length; i++) {
myElements[i].style.opacity = 0;
}
}

即使我可以让它工作,它也不会是最终的答案,因为将 app.scss 中的不透明度设置为 0 仍然会使选项卡栏可见,但我也需要它变黑。

我认为这与属性绑定(bind)有关。

有什么想法吗?

谢谢

最佳答案

您需要使用指针事件让事件穿过您的黑暗覆盖层。 我已经在这个 Plunkr 中证明了这一点(转到显示主页的第二个选项卡)

样式.css

.dark-overlay{
 position:absolute;
 width:100%;
 height:100%;
 background-color:#888;
 opacity:0.9;
 top:0px;
 left:0px;
 z-index:1000;
 pointer-events: none;
}

并将其放入 home.html

<button (click)="stealthMode()">Tint</button>  
<div class="dark-overlay" [hidden]="showOverlay"></div>

这个在 home.ts

showOverlay:boolean = false;
  stealthMode(){
    this.showOverlay = !this.showOverlay;
  }

关于properties - Ionic 2 - 属性绑定(bind)使应用程序不可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42077957/

相关文章:

wpf - Caliburn Micro,绑定(bind)和通知

c# - 比较日期时发生 StackOverflowException

properties - Dagger:在构造函数中注入(inject)命名字符串

Java Bean 属性 : jdk7 vs jdk 8 - WeakOnTheFeet vs StrongInTheArm

java - 如何在 JAVA (Netbeans IDE) 上进行自定义绑定(bind)

cordova - ionic 2 : Use NFC

node.js - 如何在不删除杀毒软件或重新安装 Node 的情况下释放资源\AppData\Local\Temp\shelljs_60d55c70cdc922162f4b?

javascript - 底部开始列表

jquery - 为什么 jQuery.extend 定义为 jQuery 函数属性,而 jQuery.fn.extend 定义为 jQuery 原型(prototype)对象属性

java - 如果在java中编译时替换Getter/Setter;如何才能实现他们的目的呢?