0

フォント、フォントサイズ、フォントの太さの3つの配列をランダム化したいと思います。次に、randomFontのクラス名を使用して、3つの配列の結果をdivに表示する必要があります。したがって、randomFontクラスを使用するたびに、ランダムなフォント/サイズ/太さが返されます。

これをどのように行うかについてのアイデアはありますか?

各配列に3つの変数があるとしましょう。

  • 配列1(フォント)>フォント1、フォント2、フォント3
  • 配列2(フォントの太さ)>太字、明るい、100
  • 配列3(フォントサイズ)> 12px、24px、100px

次に、配列がそれぞれからランダムに1つを選択し、randomFontと呼ばれるdiv>classで出力を表示するようにします。

どうすればいいですか?

4

3 に答える 3

2

jQueryは実際には必要ありませんが、これで十分です。これは、私が作成しなければならなかったサンプルコードを提供しなかったためですが、これで問題は解決します。

var item = items[Math.floor(Math.random() * items.length)];

アレイごとにこれを行います。

于 2012-11-20T18:33:42.683 に答える
1

http://jsfiddle.net/CrossEye/bwsvy/で1つのアプローチを見ることができます

var fonts = ['Arial', 'Helvetica', 'Georgia', 'Tahoma', 'Verdana'];
var weights = ['normal', 'bold', 'lighter'];
var sizes = ['16px', '20px', '24px', '36px', '40px'];

var choose = function(arr) {
    return arr[Math.floor(Math.random() * arr.length)];
};

// ...
var text = choose(sizes) + ' ' + choose(weights) + ' '  +  choose(fonts);
output.innerHTML = '<div class="randomFont">' + text + '</div>';
// e.g. '24px bold Tahoma'
于 2012-11-20T21:18:57.280 に答える
0

配列をランダム化することの意味は明確ではありません。値の固定リストがあり、それらを所定の位置に再配置する場合は、次のようなシャッフル関数が必要です。

var shuffle = function(arr) {
    for (var i = arr.length; i--;) {
        var j = Math.floor(Math.random() * (i + 1));
        var temp = arr[i];
        arr[i] = arr[j];
        arr[j] = temp;
    }
    return arr;
}

それはあなたが探しているものに対する部分的な答えかもしれませんが、あなたが全体的に何を求めているのかは私には本当にはっきりしていません。

于 2012-11-20T18:54:24.077 に答える