所以我有这两个标志:
<div class="flag flag-srb" id="2" (click)="changeLanguage(2)">
<img src="assets/flags/srb.png" alt="srb" height="64" width="64">
</div>
<div class="flag flag-eng" id="1" (click)="changeLanguage(1)">
<img src="assets/flags/eng.png" alt="eng" height="64" width="64">
</div>
默认情况下,这两个的不透明度都是 0.5。css:
.flag {
display: inline;
padding-right: 10px;
opacity: 0.5;
}
现在我想根据用户选择的不透明度将不透明度更改为 1。然后当他切换到不同的标志(点击不同的标志)时,他选择的不透明度变为 1,而另一个恢复为 0.5。
当他点击旗帜时,他激活了这个功能:
changeLanguage(id){
this.sightService.changeLanguageId(id);
this.sightService.getSights().subscribe(sights => {
this.sights = sights;
});
console.log("this.sights is now: ", this.sights);
console.log("id is",id);
var testNula = document.getElementById(id); //GET PICTURE WITH ID
var testDva = document.getElementById(id).id; //GET PICTURE ID, THE NUMBER
if(testDva == this.sights[0].pin_lang_id) { //WHAT I TRIED
console.log("THIS ONE IS SELECTED", testDva);
testNula.style.opacity = "1";
} else if (testDva != this.sights[0].pin_lang_id) {
testNula.style.opacity = "0.5";
}
}
注意this.sights[0].pin_lang_id是加载了一个服务。所以当他点击旗帜时会发生变化。我想用这个来改变不透明度。
另外,当页面加载时this.sights[0].pin_lang_id是 2,所以第一个标志应该是不透明度 1,另一个是 0.5。当他点击英国国旗时,第一个旗帜应该是0.5,而英国是1。
慕码人8056858
郎朗坤
相关分类