jQueryで特定のattrを持つ要素の中からランダムに一つだけ表示にしたい
以下のようにある部分までの想定はできているのですが、どうしても
「str」を持つ要素だけを取得、配列に代入する方法が分からず苦戦しています。
function getCurrentImage(str) {
/*
* TODO : strを持つ要素を取得して配列に代入
*/
var elm = [];
//配列からランダムに値を取得
var random = elm[Math.floor(Math.random() * elm.length)];
//対象をdisplay:blockにする
elm.random.css('display', 'block');
}
getCurrentImage('day');
img {
display: none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<img src="a.jpg" data-role="day">
<img src="b.jpg" data-role="day">
<img src="c.jpg" data-role="day">
<img src="d.jpg" data-role="night">
<img src="e.jpg" data-role="night">
どなたか良い方法をご存知、もしくは似たような経験をお持ちの方のお力添えを願いたく投稿させていただきました。