2016-11-25 45 views
0

私はJSで私の旅を凝視していますので、面白いです。 小さなアプリケーションをビルドする。左側の画像は配列に格納されています。誰かがクリックした場合、高さを変更するだけでなく、ブール値をfalseからtrueに変更して、ユーザーがクリックしたことを知るようにします。私の考えでは、このようになります:配列 - > EventListenerをitem-> chainに追加すると、選択された関数が選択されます(値をtrueに変更) - >高さを変更するsetClick関数を実行します。そこに何が問題なの? 私はアドバイスをしていただけます。 CODEPEN http://codepen.io/finewitch/pen/ZBKMKm配列に格納されているオブジェクトのブール値を変更する

var storage = new Array(); 
storage[0] = document.getElementById("grandFatherCh"); 
storage[1] = document.getElementById("grandMotherCh"); 
storage[2] = document.getElementById("sisterCh"); 
storage[3] = document.getElementById("brotherCh"); 
storage[4] = document.getElementById("fatherCh"); 
storage[5] = document.getElementById("motherCh"); 
storage[0].clicked = false; 
storage[1].clicked = false; 
storage[2].clicked = false; 
storage[3].clicked = false; 
storage[4].clicked = false; 
storage[5].clicked = false; 


for (var i=0; i<storage.length; i++){ 
    storage[i].addEventListener("click",choosen, setClick); 
    console.log("clicked"); 
}; 

function choosen(){ 
     if (storage[i].clicked == false) 
      { 
      return "stillFalse" 
      storage[i].clicked = true;   
    } 

}; 

function setClick(){ 
    if(storage[i].clicked === true){ 
    return "setClickWorks" 
    storage[i].style.height = "400px"; 
    }else{ 
    console.log('failed'); 
    } 

}; 
+0

これは要素にプロパティを追加するだけのことはできません。 'storage [0] .clicked' - ' HTMLElement'型だと思いますが、 'clicked'プロパティが組み込まれていないと思います。 –

+1

どのようにjavascriptで配列をクリックしたいですか? @PraveenKumarのようなhtml要素にclickイベントハンドラをバインドしてみてください。 –

+0

'setClick'とは何ですか?また、 'addEventListener'の第2引数で' false'にする必要があります –

答えて

0

は、たぶん私は何かが欠けていますが、私はあなたがいない間違った場所にreturn文を持っていると思いますか?

function choosen(){ 
    if (storage[i].clicked == false) { 
     return "stillFalse" 
    } else { 
     storage[i].clicked = true;   
    } 
} 

function setClick(){ 
    if (storage[i].clicked === true){ 
     storage[i].style.height = "400px"; 
     return "setClickWorks" 
    } else { 
     console.log('failed'); 
    } 
} 
+0

うん、あなたは正しいと思うよ。しかし、それは解決策ではありません。 –

関連する問題