1

私は基本的に、サイトのボタンをクリックすると、配列からのランダムなテキストと配列からのランダムな画像のいずれかでページが更新されるように設定しようとしています。テキスト部分を削除しましたが、画像部分の実行方法を知る必要があります。これは、私が現在テキストジェネレーターに使用しているスクリプトです。

<script language="JavaScript">
var r_text = new Array ();
r_text[0] = "You'll want to track-change your life";
r_text[1] = "A misplaced comma can get you fired";
r_text[2] = "Work-life balance? Ha!";
r_text[3] = "Even the bankers laugh at you";
r_text[4] = "There's a gym so you can't leave the building";
r_text[5] = "Student debt can't be discharged";
r_text[6] = "Sallie Mae becomes one of your biggest contacts";
r_text[7] = "Good luck with partner track";
r_text[8] = "There are no lifestyle firms";
r_text[9] = "Your soul will die";
r_text[10] = "Socratic Method? More like Suck-ratic Method";
r_text[11] = "So much paper. You'll be destroying rainforests";
var i = Math.floor(12*Math.random())
document.write(r_text[i]);
</script>

ここで画像を取得するために私ができることについて何かアイデアはありますか?

4

5 に答える 5

1
var r_images = new Array (); 
r_images[0] = "a.jpg";
r_images[1] = "b.jpg;
.
.
.


var i = Math.floor(12*Math.random())
document.write(r_text[i]);
document.write("<img src='"+images_folder+r_images[i]+"' />");
于 2012-04-05T14:36:27.533 に答える
0

画像に対しても同じことができますか?

var imageNames = ['life', 'fired', 'balance', 'bakers', 'gym']
var i = Math.floor(5*Math.random())
document.write("<img src='http://path/to/your/image/" + imageNames[i] + ".jpg'>");
于 2012-04-05T14:37:28.330 に答える
0

画像用のフォルダを設定し、テキストと同じようにランダムな名前を付けます12,13,14.......

var i = Math.floor(24*Math.random())
document.write("<img src='folder-path/" + r_text[i] + ".jpg'>");
于 2012-04-05T14:44:37.940 に答える
0

imgタグを同じ配列に配置するだけなので、テキストと混ざります。

....
r_text[12] = "<img src='1.gif' />";
r_text[13] = "<img src='2.gif' />";
...

等....

于 2012-04-05T14:34:10.230 に答える
0

これは古い投稿だと思いますが、将来の読者のためにinnerHTML、代わりに使用することを検討してください。また、画像を追加するときに、横の番号を変更することを心配する必要がないので、そのように変更することdocument.writeをお勧めしますvar i = Math.floor(12*Math.random())var i = Math.floor(r_text.length * Math.random());*Math.random())

この例では、配列オブジェクトを使用して、各画像の代替テキスト(これらの検証スティックラー用)を簡単に定義できるようにしました。

実用的な例を気にする人のために:

http://jsfiddle.net/GmZPe/3/

HTML

<div id="container"></div>

JS

var r_img = [];
r_img[0] = {
    source:
        "image01.png",
    altText:
        "image 01"
};
r_img[1] = {
    source:
        "image02.png",
    altText:
        "image 02"
};
r_img[2] = {
    source:
        "image03.png",
    altText:
        "image 03"
};

var i = Math.floor(r_img.length * Math.random());
var s = "<img src='http://tinyurl.com/ky3nmqp/" + r_img[i].source + "' alt='" + r_img[i].altText + "'>";
document.getElementById('container').innerHTML = s;

または、必要に応じて、イベントが発生したときに呼び出す関数でラップすることもできます。

http://jsfiddle.net/GmZPe/4/

HTML

<div id="container"></div>
<button onclick="myFunction()">Click me</button>

JS

function myFunction() {
    var r_img = [];
    r_img[0] = {
        source:
            "image01.png",
        altText:
            "image 01"
    };
    r_img[1] = {
        source:
            "image02.png",
        altText:
            "image 02"
    };
    r_img[2] = {
        source:
            "image03.png",
        altText:
            "image 03"
    };

    var i = Math.floor(r_img.length * Math.random());
    var s = "<img src='http://tinyurl.com/ky3nmqp/" + r_img[i].source + "' alt='" + r_img[i].altText + "'>";
document.getElementById('container').innerHTML = s;
}
于 2013-10-10T18:06:23.147 に答える