[英]function doesn't work
我需要一些有關此功能的幫助:
function passar() {
var fotos1 = document.getElementById("foto1");
var fotos2 = document.getElementById("foto2");
var fotos3 = document.getElementById("foto3");
if ( fotos1.style.display = "block" ) {
fotos1.style.display = "none";
fotos2.style.display = "block";
} else if ( fotos2.style.display = "block" ) {
fotos2.style.display = "none";
}
}
本來應該在第一個條件發生更改時隱藏“ fotos 2”,但它沒有用,有人知道為什么嗎?
=
分配
==
用於比較
===
用於嚴格比較
if (fotos1.style.display === "block") {
fotos1.style.display = "none";
fotos2.style.display = "block";
} else if (fotos1.style.display === "none") {
fotos2.style.display = "none";
}
}
您的條件語句正在執行分配而不是比較:
if (fotos1.style.display === "block") {
fotos1.style.display = "none";
fotos2.style.display = "block";
} else if (fotos1.style.display === "none") {
fotos2.style.display = "block";
}
另外,建議在弱比較==
使用===
進行嚴格比較。 在某些瀏覽器中,您還可以從比較中獲得大約4倍的比較速度,從而獲得比較的額外好處。
在這種情況下,您應該使用一個等於兩個的比較運算符:
if (fotos1.style.display == "block") {
取而代之的是,您使用的是一個等於值的賦值參數:
if (fotos1.style.display = "block") {
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.