2017-07-11 6 views
0

"ランダムクォートジェネレータ"を作るコースがあります。私の関数にクラスを追加する

私は、このクラスを追加しようとしています:私は私のjQueryで作成した私のアレイに

div.info p { 
    color: #fff; 
    font-size: 1em; 
} 

を。私は完全に失われています。私は自分のコードに

.addClass(div.info p) 

を追加しようとしました、と私はそれが私はそれを行うことになってますが、どのように確認していないかと思います。ここで

は、これまでのところ、私のJSです:あなたは新しい乱数を使用すると、配列にアクセスしようとするたびに生成する必要があるため

$(document).ready(function() { 
    function getQuote() { 
    var quotes = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p" ]; 
    var author = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p" ]; 

    $.each($('.info'), function(i, element) { 
     $(element).html(quotes[randomNum]); 
    }); 

    var randomNum = Math.floor((Math.random() * quotes.length)); 
    var randomQuote = quotes[randomNum]; 
    var randomAuthor = author[randomNum]; 

    $(".quote").text(randomQuote); 
    $(".author").text(randomAuthor); 
    } 

    $(".btn").on("click", getQuote); 
}); 

答えて

0

代わりの要素を選択し、希望のスタイルを追加し、その後のjQueryを使用すると、あなたにそのクラスを追加します段落.addClass("my-paragraph")。このスタイルを引用符に追加するとします:$(".quote").text(randomQuote).addClass("my-paragraph");

$("p").addClass("my-paragraph");
.my-paragraph { 
 
    color: blue; 
 
    font-size: 1em; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<p>My paragraph</p> 
 
<p>My other paragraph</p>

+0

私はあなたを正しく理解しているので、私はコード・インで私の外部にajaxをインポートしました。 私の配列が引用符とrandomQuotesとして定義されている場合。 $( "randomQuote")。addClass( "div.info p")? 編集:迅速な対応をいただきありがとうございます。 –

+0

[.addClass](https://api.jquery.com/addclass/)メソッドを使用している場合は、CSSクラスセレクタを使用する必要があります(ここでは例です)。あなたの関数が配列を反復処理するときは、自動的にそのスタイルを_.addClass_メソッドで追加します。 –

+0

jQueryを使ってHTMLを編集しているようです。私は正しいですか? –

0

あなたの問題がある - あなたは異なる結果を毎回したいと仮定します。これを試してみてください:例えば、.MY-段落、CSSクラスセレクタを追加し、

function getQuote() { 
 
    var quotes = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p"]; 
 
    var author = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p"]; 
 

 
    var random = function(max) { 
 
    return Math.floor((Math.random() * max)); 
 
    } 
 
    
 
    $.each($('.info'), function(i, element) { 
 
    $(element).html(quotes[random(quotes.length)]); 
 
    }); 
 

 
    var randomQuote = quotes[random(quotes.length)]; 
 
    var randomAuthor = author[random(author.length)]; 
 

 
    $(".quote").text(randomQuote); 
 
    $(".author").text(randomAuthor); 
 
    
 
} 
 

 
$(".btn").on("click", getQuote);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="info"></div> 
 
<div class="info"></div> 
 
<div class="info"></div> 
 
<div class="info"></div> 
 
<div class="info"></div> 
 
<div class="info"></div> 
 
<div class="info"></div> 
 

 
Quote: 
 
<div class="quote"></div> 
 

 
Author: 
 
<div class="author"></div> 
 

 
<button class="btn">Click me</button>

+0

ロリーありがとうございました!それは非常に感謝していますが、ここではプロジェクトへのリンクです。 https://codepen.io/jsf2008/pen/vZQxPe 私は最終的に毎回12種類の新しい見積もりを生成する12種類のオブジェクトを持っています。次のステップは、jQueryでそれを行うことです。私は問題を抱えている同じクラスで置換配列を表示するだけです。 –

関連する問題