タイトルに難しい種類のもの、申し訳ありません。複数の項目を含むデータ属性からクラスを作成する
私は色というデータattrを持っています。例えば<div class="square" data-colors="opt1, opt2, opt4">
この属性を取得し、3つの異なるクラスに分割したいと考えています。
私の色の配列を返しますvar colors = $('.square.active').data('colors'),
splitColors = colors.split(',');
console.log(splitColors);
:
["opt1", " opt2", " opt4"]
私はこれがあるか分からないので、私は、私は偶然、この時点になった.opt1 .opt2 .opt3
のようなものが残っています私は自分のためにもっと仕事をしているように感じています。これを行う簡単な方法はありますか?または私はこの方法を続けるべきですか?もしそうなら、どのように配列の各項目を取得し、それを使用可能なクラスにするのでしょうか?私はここに例があり
は、コンソールに結果を見ることができます:https://jsfiddle.net/7z972udn/
は、広場をクリックしてその四角に割り当てられた色を持つ配列であなたを返すボタンを押してください。
ボタンをクリックすると、配列のアイテムから隠れたクラスを削除したいと思います。私は最終結果がこのようなものになると仮定します:$('.opt1, .opt2, .opt3').removeClass('hidden');
私はどこにいるのかそのポイントに到達する方法は分かりません。
は、なぜあなたはデータ内のクラス名にピリオドを追加しないでください文字列
を生成します。次に、join()js関数を使用して、 '.opt1、.opt2、.opt3'という文字列を1つ取得することができます – ggderas
'hidden'クラスを配列から削除したいと述べましたが、opt1、opt2、 opt3。また、あなたのコードで 'option'タグセレクタを使用しましたが、あなたのDOMには何も要素がありません。あなたは何を正確に探しているのですか? – DinoMyte