2017-11-06 1 views
0

ワールドリーダーの画像を表示するWebページがあります。ボタンをクリックすると配列に画像を追加する機能を作成します

リーダーにリーダーを追加して表示するボタンを追加する必要があります。
誰かが正しい方向に私を指すことができる場合は、事前に感謝します。

<button class="btn" id="addLeader">Add Leader</button> 

</section> 


<script type="text/javascript"> 

window.onload = function() { 


    var ArrayOfImages = ['images/trump.jpg', 'images/putin.jpg', 'images/merkel.jpg', 'images/jinping.jpg']; //array of images 
    ArrayOfImages.forEach(function (image) { // for each link l in ArrayOfImages 
     var img = document.createElement('img'); // create an img element 
     img.src = image;       // set its src to the link l 
     img.height = '300'; 
     img.width = '200'; 
     img.hspace = '20'; 
     document.body.appendChild(img);   // append it to the body 
    }); 


     var addButton = document.getElementById('addLeader'); 
     addButton.addEventListener('click', addLeader); 

    } 

    function addLeader(){ 
    ArrayOfImages.push('images/kimjongun.jpg'); 
    console.log(ArrayOfImages); 
    } 


</script> 

答えて

1

表示部分を関数にすると、それを呼び出して再レンダリングすることができます。私はシンプルで素朴なバージョンを作った。

var ArrayOfImages = ['images/trump.jpg', 'images/putin.jpg', 'images/merkel.jpg', 'images/jinping.jpg']; //array of images 

function displayImages (images) { 
    images.forEach(function (image) { // for each link l in ArrayOfImages 
     var img = document.createElement('img'); // create an img element 
     img.src = image;       // set its src to the link l 
     img.height = '300'; 
     img.width = '200'; 
     img.hspace = '20'; 
     document.body.appendChild(img);   // append it to the body 
    }); 
} 

var addButton = document.getElementById('addLeader'); 
addButton.addEventListener('click', addLeader); 
displayImages(ArrayOfImages); 

function addLeader(){ 
    ArrayOfImages.push('images/kimjongun.jpg'); 
    document.body.innerHTML = ''; //clear previous images 
    displayImages(ArrayOfImages); 
} 
+0

このコードを実装すると、画像が画面に表示されません。なぜこれが起こるのか知っていますか? – MattBerg

+0

ああ私が最初に編集するときにdisplayImagesを呼びたいと思うでしょう。 – ktilcu

+0

ああ、100万に感謝し、画像が表示されないという問題を解決しました。問題は今、リーダー追加ボタンをクリックしても何も起きていないということです。私はデバッガでそれを見て、私は関数が実行されている場合は明確ではない。 – MattBerg

関連する問題