回答編集履歴

5

テキスト修正

2019/05/10 08:03

投稿

jun68ykt
jun68ykt

スコア9058

test CHANGED
@@ -94,4 +94,48 @@
94
94
 
95
95
 
96
96
 
97
+ ### 追記3
98
+
99
+
100
+
101
+ 以下、修正後のご質問に対する回答になります。
102
+
103
+ 他の書き方もありそうですが、一例として、
104
+
105
+
106
+
107
+ ```javascript
108
+
109
+ $('.grad_wrap').each(function() {
110
+
111
+ const tagSet = $('.tag_set', this);
112
+
113
+ if ($('a', tagSet).length >= 2) {
114
+
115
+ tagSet.parent().addClass('grad_item');
116
+
117
+ $('.grad_btn_js', this).css('display', 'flex');
118
+
119
+ }
120
+
121
+ });
122
+
123
+ ```
124
+
125
+
126
+
127
+ 以下は上記のコードを動作確認するためのものです。
128
+
129
+
130
+
131
+ - **動作確認用サンプル:** [https://jsfiddle.net/jun68ykt/tnLb23f0/4/](https://jsfiddle.net/jun68ykt/tnLb23f0/4/)
132
+
133
+
134
+
135
+ 分かりやすくするため、「ほげほげ」や「リンク」などのテキストの末尾に番号を追加し、`.grad_wrap`のdivを4個にして、スタイルも適当に追加しました。
136
+
137
+
138
+
139
+
140
+
97
141
  以上、参考になれば幸いです。

4

テキスト修正

2019/05/10 08:03

投稿

jun68ykt
jun68ykt

スコア9058

test CHANGED
@@ -52,7 +52,7 @@
52
52
 
53
53
 
54
54
 
55
- - `.hoge` の中にある `a` の総数が 2個以上のとき、 2番目の `.hoge` (中の `a` は個であっても。)のスタイルを変更したい。
55
+ - `.hoge` の中にある `a` の総数(ご質問に挙げられているHTMLだと4個)が 2個以上のとき、 2番目の `.hoge`のスタイルを変更したい。 (2番目の `.hoge` それ自体に含まれる `a` が1個また0個であっても。)
56
56
 
57
57
 
58
58
 

3

テキスト修正

2019/05/10 07:09

投稿

jun68ykt
jun68ykt

スコア9058

test CHANGED
@@ -52,7 +52,7 @@
52
52
 
53
53
 
54
54
 
55
- - `.hoge` の中にある `a` の総数が 2個以上のとき、 2番目の `.hoge` (の中の `a` は何個あっても。)のスタイルを変更したい。
55
+ - `.hoge` の中にある `a` の総数が 2個以上のとき、 2番目の `.hoge` (の中の `a` は何個あっても。)のスタイルを変更したい。
56
56
 
57
57
 
58
58
 

2

テキスト修正

2019/05/10 07:00

投稿

jun68ykt
jun68ykt

スコア9058

test CHANGED
@@ -32,7 +32,7 @@
32
32
 
33
33
 
34
34
 
35
- - [https://jsfiddle.net/jun68ykt/xuL5c4z0/1/](https://jsfiddle.net/jun68ykt/xuL5c4z0/1/)
35
+ - **動作確認用サンプル:** [https://jsfiddle.net/jun68ykt/xuL5c4z0/1/](https://jsfiddle.net/jun68ykt/xuL5c4z0/1/)
36
36
 
37
37
 
38
38
 
@@ -41,3 +41,57 @@
41
41
 
42
42
 
43
43
  上記の回答は、質問の題意を勘違いしていたかもしれません。その場合はどうぞスルーしてください。
44
+
45
+
46
+
47
+ ### 追記2
48
+
49
+
50
+
51
+ 上記の回答は、ご質問の意図が
52
+
53
+
54
+
55
+ - `.hoge` の中にある `a` の総数が 2個以上のとき、 2番目の `.hoge` (の中の `a` は何個あっても。)のスタイルを変更したい。
56
+
57
+
58
+
59
+ というものであると解釈したものでしたが、そうではなく、
60
+
61
+
62
+
63
+ - `.hoge` の各々について、各 `.hoge` の中にある `a`の個数に応じて、スタイルを変えたい。
64
+
65
+
66
+
67
+ というのが主旨であるならば、例えば以下のようにします。
68
+
69
+
70
+
71
+ ```javascript
72
+
73
+ $('.hoge').each(function(){
74
+
75
+ $(this).css(
76
+
77
+ 'display',
78
+
79
+ $('a', this).length >= 2 ? 'block' : 'none'
80
+
81
+ );
82
+
83
+ });
84
+
85
+ ```
86
+
87
+ - **動作確認用サンプル:** [https://jsfiddle.net/jun68ykt/kc2sjw0n/1/](https://jsfiddle.net/jun68ykt/kc2sjw0n/1/)
88
+
89
+
90
+
91
+ 上記では、各 `.hoge` について、その中にある `a` の個数が2個以上ならば`display` に `block`を、 1個以下であれば `none` を設定しています。
92
+
93
+
94
+
95
+
96
+
97
+ 以上、参考になれば幸いです。

1

テキスト修正

2019/05/10 06:35

投稿

jun68ykt
jun68ykt

スコア9058

test CHANGED
@@ -33,3 +33,11 @@
33
33
 
34
34
 
35
35
  - [https://jsfiddle.net/jun68ykt/xuL5c4z0/1/](https://jsfiddle.net/jun68ykt/xuL5c4z0/1/)
36
+
37
+
38
+
39
+ ### 追記
40
+
41
+
42
+
43
+ 上記の回答は、質問の題意を勘違いしていたかもしれません。その場合はどうぞスルーしてください。