2014-12-13 97 views
0

可以說我有一個變量數組,我想遍歷數組並僅更改特定變量。這裏有一個例子來說明我的意思。javascript-檢查數組中的元素是否是特定變量

function click() { 
    var p1 = document.getElementById("p1"); //a paragraph 
    var p2 = document.getElementById("p2"); //a paragraph 
    var img = document.getElementById("img"); //an image 
    var arr = [p1, p2, img]; 
    for(i = 0; i < arr.length; i++) { 
     //Herein lies the problem 
     if (arr[0] == img) { ---Or--- if (i == newarr.indexOf(img)) { 

      arr[0].style.display = "none"; 
     } 
    } 
} 

在上面的代碼片段中,如果條件不起作用。如何檢查元素是否是特定變量?

回答

2

使用這樣的:

for(var i = 0; i < arr.length; i++) { 
    if (arr[i] === img) { 
     arr[i].style.display = "none"; 
    } 
} 

你可以做到這一點也很喜歡:

arr.forEach(function(v){ 
    if(v===img) v.style.display = "none"; 
}); 
+1

它的工作原理。愚蠢的錯誤。 – Bolboa 2014-12-13 18:31:56

2

使用此情況下

var arr = [p1, p2, img]; 
if (arr.indexOf(img) != -1) { 
    var pos = arr.indexOf(img); 
    arr[pos].style.display = "none"; 
} 

希望這個作品。

相關問題