X



jQuery 質問スレッド vol.8
■ このスレッドは過去ログ倉庫に格納されています
0001Name_Not_Found
垢版 |
2017/10/23(月) 06:31:18.14ID:???
JavaScriptでDOM用ライブラリであるjQueryのスレです。
次スレは>>950>>2のテンプレ案(本スレで改善案があれば考慮)を元に立ててください

このスレはjQueryやjQuery UIの使い方やjQueryプラグインの作り方を質問するスレです。
jQueryを使って作る側のスレであって、こんなプラグインありませんか?と聞くスレではありません。
そういうのは自分で探してください。
ろくにサポートもされてなさそうな野良プラグインの使用はおすすめしません。

JavaScriptの質問は関連スレで質問して下さい。

■前スレ
jQuery 質問スレッド vol.7
https://mevius.5ch.net/test/read.cgi/hp/1478055094/

■関連スレ
JavaScript の質問用スレッド vol.130
https://mevius.5ch.net/test/read.cgi/hp/1501503056/
ECMAScript デス 6
https://mevius.5ch.net/test/read.cgi/tech/1483332914/
JavaScript ライブラリ総合質問所 vol.5
https://echo.5ch.net/test/read.cgi/hp/1465399470/
0296Name_Not_Found
垢版 |
2018/02/11(日) 20:26:48.13ID:???
>>294
> blackはredやgreenになり

それをclassで実現するの大変なんだわ

だって、"hoge black" とかあって、
この内blackだけをredにするわけだろ?

この時、blackとred以外にどんな色があるかは不明とする。
またhogeはhoge以外にもどんなものが来るかは不明とする

この場合に、blackをredにする方法、どういうのがある?
0297Name_Not_Found
垢版 |
2018/02/11(日) 20:53:15.03ID:???
>>296
私ではありませんが>>153>>140とか
でも前者はmyTagsをいじるのかえって大変ですね
0298Name_Not_Found
垢版 |
2018/02/11(日) 20:55:48.57ID:???
>>297
そういうこと。それに比べてdata-*属性を使えば
単純な一メソッド呼び出しで完結してしまう
0299Name_Not_Found
垢版 |
2018/02/11(日) 21:10:54.37ID:???
それが合理的な方法であることは分かったけど>>140には「.aaaに動的に付けたclass(bbb ccc ddd・・・)の削除や付け直しを一括でしたく」って書いてあるから質問に対する答えになってなくね?
結局>>140に対する回答はどうなるの?
0300Name_Not_Found
垢版 |
2018/02/11(日) 21:15:39.71ID:???
>>299
回答なら書いてあるじゃん

142 名前:Name_Not_Found[sage] 投稿日:2018/01/28(日) 11:50:24.50 ID:???
>>140
それだと静的に付けたclassまで消えちゃうじゃん

143 名前:Name_Not_Found[sage] 投稿日:2018/01/28(日) 17:27:37.90 ID:???
>>142
そうなんだけど・・・の管理が面倒で
変更の度にそこも付け加えなくてはならなくて
最初つけるclassは1,2個と少ないので楽かなと
0301Name_Not_Found
垢版 |
2018/02/11(日) 21:24:41.98ID:???
直接的には書いてないけど、つまり>>140の質問に対する答えは「なし」ってことね。
0302Name_Not_Found
垢版 |
2018/02/11(日) 21:24:49.04ID:???
>>298
でグループ化とは?

>>299
静的に付けたclassが消えるのはいいとしてhasClassどうすんだ?ってなかったっけ?
0303Name_Not_Found
垢版 |
2018/02/11(日) 21:30:40.83ID:???
>>302
> でグループ化とは?

>>208に書いてあるよ
> 値をグループ化できる。複数の値を週類ごとにまとめたものがグループ
> classの場合は値を書くしかないから3つのグループがあって、一つのグループごとに
> 5個の値があれば、最大15個の値を管理する必要が出てくる
> data-*を使えば3つでいい(今は数が多くて管理が大変という話だというのを思い出そう)
> グループと値として管理できるのがメリット
0304Name_Not_Found
垢版 |
2018/02/11(日) 21:31:57.45ID:???
>>302
> 静的に付けたclassが消えるのはいいとしてhasClassどうすんだ?ってなかったっけ?

hasClassって、この場合、blackか?redか?greenか?・・・・その他色々な色か?って
ループでぐるぐる回していま何色か調べるってこと?

そりゃ大変そうだな。
0305Name_Not_Found
垢版 |
2018/02/11(日) 22:57:06.16ID:???
data-*属性をCSSのクラスリストのように使う方法

https://developer.mozilla.org/ja/docs/Web/CSS/Attribute_selectors
> [attr~=value]
> attr という名前の属性の値が空白区切りの語のリストで、その中の1つが正確に value と一致する要素を表します。

↑属性セレクタとしてこれがあるからできるんじゃないかと思ってみたら、
やっぱりできるもんだなぁ。data-*属性でhasClass相当ってこれでいいでしょ?

https://jsfiddle.net/s9epbv2k/
-------- html
<ul>
 <li data-test="foo bar">1</li>
 <li data-test="foo bar baz">2</li>
 <li data-test="foo baz bar">3</li>
 <li data-test="baz foo bar">4</li>
</ul>

-------- css
[data-test~="baz"] {
color: red;
}

-------- js
$('[data-test~="baz"]').on('click', function() {
 alert($(this).text())
})
$('li').on('click', function() {
 alert($(this).is('[data-test~="baz"]'));
})
0306Name_Not_Found
垢版 |
2018/02/11(日) 23:54:54.27ID:FNzc2dpv
>>269
var hash = {price: 100, size: "L"};

$('#id').data('value', hash);
console.log($('#id').data('value')); // => {price: 100, size: "L"}

ほう、price が数値型か。
ためになった
0307Name_Not_Found
垢版 |
2018/02/12(月) 08:28:42.43ID:???
立ち返っていうとですね
data属性を使わなくてもidとclassでどうにでもなることだとなんだけどねw
0308Name_Not_Found
垢版 |
2018/02/12(月) 09:58:07.12ID:???
>>304
全て調べるとは限らないぞ
greenが含まれているか否か、それだけの場合もある
0309Name_Not_Found
垢版 |
2018/02/12(月) 11:13:06.31ID:???
>>305
孫以下はどうするよ?has使うか?回りくどいな
0310Name_Not_Found
垢版 |
2018/02/12(月) 11:16:33.87ID:???
>>309
今はhasClassとの違いだったよね?

まずhasClassはこう書けるというのを示してくんない?
hasClassで孫以下はどうするのよ?


それにしても $(this).is('[data-test~="baz"]') は最強だな
セレクタ使うから、$(this).is('span [data-test~="baz"]')
みたいなことまでできるのが容易に思いつく


hasClassで孫以下はどうするのよ?
0311Name_Not_Found
垢版 |
2018/02/12(月) 15:26:16.07ID:???
セレクタよりなるべくメソッド使いたいもんだな
toggleClassはできそうだが問題は他のライブラリがつけたクラスだな
無視するかはその人次第なのでそうしろとか有り得んわ
0312Name_Not_Found
垢版 |
2018/02/12(月) 17:03:35.60ID:???
> セレクタよりなるべくメソッド使いたいもんだな

お前の好みなんかどうでもいい
0313Name_Not_Found
垢版 |
2018/02/12(月) 17:04:47.81ID:???
> 無視するかはその人次第なのでそうしろとか有り得んわ

無視するかはその人次第なので、
そうしろとか有り得んわ
なんて、お前が決めることではない
0314Name_Not_Found
垢版 |
2018/02/12(月) 17:33:00.27ID:???
そうだな、data-かclassかはお前が決めることではない
0315Name_Not_Found
垢版 |
2018/02/12(月) 17:38:10.80ID:???
単にこの問題に対してdata-*の方が優れているという
ことを論理的に説明しただけ。

これは決まっている事実を公表しただけ
俺が決めたわけじゃない
0316Name_Not_Found
垢版 |
2018/02/12(月) 22:52:55.64ID:???
詳細がわからない以上どっちもどっちだろ
どちらが優れていると確定できるわけがない
上で同じようなこと書いてる人がいたが各々好きにすればいいだけ
0317Name_Not_Found
垢版 |
2018/02/12(月) 23:01:02.40ID:???
>>316
話がごっちゃになってるぞ
最終的に選ぶのが聞いた人であって、
今回の話にdata-*が有利なのは単なる事実だ
0318Name_Not_Found
垢版 |
2018/02/12(月) 23:02:47.41ID:???
もともとclassでやると・・・の管理が面倒って話だからな
最初っからclassでは大変だっていう自覚はあったわけだ
それをどう解決すべきかがわからずclassで頑張ろうとしていただけで

143 名前:Name_Not_Found[sage] 投稿日:2018/01/28(日) 17:27:37.90 ID:???
>>142
そうなんだけど・・・の管理が面倒で
変更の度にそこも付け加えなくてはならなくて
最初つけるclassは1,2個と少ないので楽かなと
0319Name_Not_Found
垢版 |
2018/02/12(月) 23:12:07.25ID:???
data-でもそれはそれで面倒な点があるかもしれんだろうに
解決策は最初からほぼわかってた
ただ確信が持てないので聞いただけだろ

>とするのはあり?
0320Name_Not_Found
垢版 |
2018/02/12(月) 23:19:01.96ID:???
かも知れないなら、まず最初に質問者に聞くべきだな
自分の想像で、問題あるという前提で話をするのはやめろ
0321Name_Not_Found
垢版 |
2018/02/12(月) 23:20:27.30ID:???
仕様がこれ以上変わらないなら答えは「あり」
業務アプリ作ってんじゃねーんだぞアホらしい
0322Name_Not_Found
垢版 |
2018/02/12(月) 23:22:04.86ID:???
> 140
> .aaaに動的に付けたclass(bbb ccc ddd・・・)の削除や付け直しを一括でしたく
> $('.aaa').removeClass('bbb ccc ddd・・・');
> を
$('.aaa').removeClass().addClass('aaa');
> とするのはあり?

> 142
> >>140
> それだと静的に付けたclassまで消えちゃうじゃん

> 143
> >>142
> そうなんだけど・・・の管理が面倒で
> 変更の度にそこも付け加えなくてはならなくて
> 最初つけるclassは1,2個と少ないので楽かなと


この一連の流れから明らかだな。
静的に付けたclassまで消えるのが問題だと認識してる。
0323Name_Not_Found
垢版 |
2018/02/12(月) 23:23:15.97ID:???
>>321
> 仕様がこれ以上変わらないなら答えは「あり」

何言ってんだ?

removeClassが消えるのは嫌だけど・・・が面倒だって話だろ
ならもっといい方法がないか探してるってことだよ
0324Name_Not_Found
垢版 |
2018/02/12(月) 23:24:56.17ID:???
はっきりさせておこう。

この例では、classを使うよりdata-*属性を使ったほうが良い
ここまではみんなOKだよな
0326Name_Not_Found
垢版 |
2018/02/12(月) 23:26:49.69ID:???
ということは、あとはclassを使うか、data-*を使うかは
質問者が選ぶことだ。

回答者としては、質問者へ回答を書くのみ
classを使った案とdata-*を使った優れた案がでた

この段階でclassを押し付けるのはおかしい
0327Name_Not_Found
垢版 |
2018/02/12(月) 23:31:25.91ID:???
質問者の >>140>>142 から

> .aaaに動的に付けたclass(bbb ccc ddd・・・)の削除や付け直しを一括でしたく
ということにたいして

> $('.aaa').removeClass().addClass('aaa');
という回答は

静的に付けたclassが消えるという問題があると
質問者と回答の双方が認識しているわけだ

問題があると認識してる時点で
この質問は「なしだけどしかたないのかなぁ」という話に変わったわけだ
0328Name_Not_Found
垢版 |
2018/02/12(月) 23:34:53.40ID:???
もし静的に付けたclassが消えてもいいというのなら
>>143は「静的に付けたclassが消えても問題ないです」とい
レスになっていただろう。

だが>143は、消えちゃうんだけど(それを避けようとすると)・・・の管理が面倒になる
という話をしているわけだ。

この流れで、もっと良い案、data-*属性を使ったやり方が出るのは当然だろう
0329Name_Not_Found
垢版 |
2018/02/12(月) 23:46:44.56ID:???
>>323
>removeClassが消えるのは嫌

捏造しないように
むしろいいかもしれんぞ
0330Name_Not_Found
垢版 |
2018/02/12(月) 23:48:09.67ID:???
捏造も何もちゃんと書いてあるじゃん

> 142
> >>140
> それだと静的に付けたclassまで消えちゃうじゃん

> 143
> >>142
> そうなんだけど・・・の管理が面倒で
0331Name_Not_Found
垢版 |
2018/02/12(月) 23:50:57.53ID:???
みなさんいろいろすみません>>140です
こういうの書くと成りすましに見られるから控えていたのですが

>>328
静的に付けたclassは消えても問題ないです
ただのセレクタ役だし、またつければいいだけで
0333Name_Not_Found
垢版 |
2018/02/12(月) 23:55:07.69ID:???
顧客が本当に必要だったものワロタwwwww
0334Name_Not_Found
垢版 |
2018/02/12(月) 23:55:28.16ID:???
>>331
> ただのセレクタ役だし、またつければいいだけで

ただのセレクタ役とは?
またつければいいというのは、どうやって?
0335Name_Not_Found
垢版 |
2018/02/13(火) 00:12:21.11ID:???
>>332
こういうのがいるから後から書きづらくなるんだよな
スレに悪影響以外何者でもない

>>334
出てるじゃん
0336Name_Not_Found
垢版 |
2018/02/13(火) 00:14:07.80ID:???
>>330
嫌と書いてないのを君が証明してどうするよw
0337Name_Not_Found
垢版 |
2018/02/13(火) 00:18:58.36ID:???
>>326
押し付けてるアンカよろ
どっちでもいいは幾つかあるが
0338Name_Not_Found
垢版 |
2018/02/13(火) 00:21:37.55ID:???
>>335
でてるじゃんじゃなくて、
どこにでてるのかって話だ

>>334
で、ただのセレクタ役とは?
またつければいいというのは、どうやって?
0339Name_Not_Found
垢版 |
2018/02/13(火) 00:22:33.11ID:???
どっちを使えとか押し付けてはいないな。
ただこの場合はdata-*属性を使ったほうが
シンプルに実装できるってだけの話だ
0340Name_Not_Found
垢版 |
2018/02/13(火) 00:25:02.39ID:???
確かにいままで出た条件の範囲では
data-*属性のほうが良いかもしれないけど

もしかしたら、明らかになってない条件の中に
data-*属性じゃだめな理由があるかもしれないだろ!
お願いだ。それを誰か書いてくれ
このままじゃ負ける
0342Name_Not_Found
垢版 |
2018/02/13(火) 00:49:54.45ID:???
なりすましするなら最後まで本人になりきって
質問に答えなきゃだめだろw
中途半端なことをするから余計怪しまれる
0343Name_Not_Found
垢版 |
2018/02/13(火) 09:14:17.29ID:???
>>140
> $('.aaa').removeClass().addClass('aaa');
> とするのはあり?
'.aaa'というセレクタで指定していることから静的に
追加したclassを変更する意図とケースは無いと見られる
後から追加されたclassNameは必ず後に追加されるので
>>144で答えは出ていると思うけどね
0344Name_Not_Found
垢版 |
2018/02/13(火) 09:15:27.85ID:???
>>343
つまり問題ないってことか
ありがとう
0345Name_Not_Found
垢版 |
2018/02/13(火) 09:46:47.03ID:???
>>344
条件次第だけどそうだと思うけどね?
jQueryでも古いバージョンにはセレクタのプロパティーがあったんだよね
最近のバージョンではなくなっているけど
$('.aaa').selector // '.aaa'
これを活用してインスタンスメソッドを作成しておくってこともできたんだけど
0346Name_Not_Found
垢版 |
2018/02/13(火) 09:47:52.64ID:???
何こいつ問題あるかないかにこだわってるんだろう
しかも質問者じゃない人のレスで満足して。
誰かに問題ありませんって言ってほしいだけかよw
承認欲求ってやつだな
0347Name_Not_Found
垢版 |
2018/02/13(火) 09:51:14.33ID:???
>>343
> '.aaa'というセレクタで指定していることから静的に
> 追加したclassを変更する意図とケースは無いと見られる

静的に追加したclassっていうのを誤解してるんじゃね?
JavaScriptで追加したものじゃなくて、HTMLに書かれた
classって意味だよ。デザインの都合で。

JavaScriptの役目としては、コードで付けたもの以外は
そのまま残しておく。だからremoveClassで全部消えちゃうのは
まずいわけ
0348Name_Not_Found
垢版 |
2018/02/13(火) 09:52:25.13ID:???
>>345
> これを活用してインスタンスメソッドを作成しておくってこともできたんだけど

こっちはまったく意味不明。何がしたいのかさっぱりわからない。
0349Name_Not_Found
垢版 |
2018/02/13(火) 10:11:01.08ID:???
>>347
>>144だと全部消えないだろ?
あくまで静的なclassNameは'aaa'での条件
質問の条件に対してことだよ
自己解釈しているのはアンタの方だろ?w
>>348
これは以前のjQueryにおいてのこと
0350Name_Not_Found
垢版 |
2018/02/13(火) 10:57:12.25ID:???
>>349
だから.aaa以外の静的に付けたものは消えるじゃん
それにそのコードだとaaaが2番目以降に来ると問題が有るし
0351Name_Not_Found
垢版 |
2018/02/13(火) 10:59:09.70ID:???
> 最初つけるclassは1,2個と少ないので楽かなと
と書いてある通り、1個とは限らないしね
0352Name_Not_Found
垢版 |
2018/02/13(火) 11:03:00.53ID:???
>>349
> これは以前のjQueryにおいてのこと

だから以前のjQueryだからって何なんだって話だ
jQuery 1.9.1で実行してみたが、
このように.aaaしか取れない
それで何がしたいのか

<span class="btn aaa">span</span>

alert($('.aaa').selector); // .aaa
0353Name_Not_Found
垢版 |
2018/02/13(火) 11:07:34.57ID:???
>>350
>>140にはそんなことは書いていないだろ?w
最後に.addClass('aaa')で完結している
0354Name_Not_Found
垢版 |
2018/02/13(火) 11:11:53.19ID:???
>>352
セレクタを参照してそれ以外のclassを削除するというインスタンスメソッド
0355Name_Not_Found
垢版 |
2018/02/13(火) 11:13:29.09ID:???
>>353

>>143に書いてあるだろ
勝手に完結させんな

143 名前:Name_Not_Found[sage] 投稿日:2018/01/28(日) 17:27:37.90 ID:???
>>142
そうなんだけど・・・の管理が面倒で
変更の度にそこも付け加えなくてはならなくて
最初つけるclassは1,2個と少ないので楽かなと
0356Name_Not_Found
垢版 |
2018/02/13(火) 11:15:01.17ID:???
>>354
> セレクタを参照してそれ以外のclassを削除するというインスタンスメソッド

だから、<span class="btn aaa">span</span>
aaaを参照して静的に書かれたbtnまで削除してしまう
使えないメソッドですねって言ってんだよw
0357Name_Not_Found
垢版 |
2018/02/13(火) 11:29:04.63ID:???
そもそもselectorを使うってセンス悪いわ

セレクタがIDだったらどうするんだ?
セレクタが属性セレクタだったらどうするだ?
カンマで区切られた複数のセレクタだったら、
親子セレクタ、隣接セレクタだったら?

セレクタがクラスの場合に限り、セレクタに
一致するものを除いて削除するメソッドとか
設計的に気持ち悪い。selectorなくして正解だったな
0358Name_Not_Found
垢版 |
2018/02/13(火) 11:54:15.83ID:???
>>357
お前らって本当に頭悪いよな余計なことを妄想しすぎ
>>140の回答はだな

$('.aaa').attr('class', 'aaa');

これで良いんだよ
バカ
0359Name_Not_Found
垢版 |
2018/02/13(火) 11:56:11.30ID:???
>>356
> $('.aaa').removeClass().addClass('aaa');
この結果から他にclassが存在しないだろ
バカ
0360Name_Not_Found
垢版 |
2018/02/13(火) 12:35:43.21ID:???
>>140で話終わってないだろ

143 名前:Name_Not_Found[sage] 投稿日:2018/01/28(日) 17:27:37.90 ID:???
>>142
そうなんだけど・・・の管理が面倒で
変更の度にそこも付け加えなくてはならなくて
最初つけるclassは1,2個と少ないので楽かなと
0361Name_Not_Found
垢版 |
2018/02/13(火) 13:09:00.19ID:???
> 最初つけるclassは1,2個と少ないので楽かなと
と書いてある通り、最初につけるclassは.aaaだけとは
限らないことが判明している。

つまり本当はこう言っているわけだ

$('.aaa').removeClass('bbb ccc ddd・・・');

$('.aaa').removeClass().addClass('aaa ・・・');


後者のほうが数が少なくてまだマシということだが、
両方ともやりたくないのは>>143からわかるだろう
(だからこそ>>140しか見ないようにしてるのだろうが)

この2つの・・・の管理をしなくて済むのが
data-*属性を使ったやり方なわけだよ
0362Name_Not_Found
垢版 |
2018/02/13(火) 14:18:20.70ID:???
>>358
それだと.aaaにデザインの都合で新たなクラスを
追加した時に、そのクラスまで消えてしまいますよね
それを避けるにはどうしたら良いのでしょうか?
なおデザイン側で追加されるクラスはわからないものとします
0363Name_Not_Found
垢版 |
2018/02/13(火) 16:13:02.54ID:???
>>362
あくまでも>>140の質問に対して率直に回答
結果としては < (elment) class="aaa" ...> にしたいということでしかない
それは質問に対しての回答ではなく、与太話でしかない
完結でしょ?
0364Name_Not_Found
垢版 |
2018/02/13(火) 16:20:22.09ID:???
>>361
$('.aaa').removeClass().addClass('aaa'); と $('.aaa').removeClass().addClass('aaa ・・・');
でhは全く結果が違うし、解釈も違うことが理解できないみたいだねw
0365Name_Not_Found
垢版 |
2018/02/13(火) 16:37:46.03ID:???
>>363
ここは質問スレです。私の質問に答えてください
0366Name_Not_Found
垢版 |
2018/02/13(火) 17:08:53.66ID:???
>>364
> 最初つけるclassは1,2個と少ないので楽かなと

「最初つけるclassは1,2個」の意味を考えましょう

$('.aaa').removeClass().addClass('aaa');
最初につけるclassが2個だとして、これのどこにそれが書いてありますか?
0367Name_Not_Found
垢版 |
2018/02/13(火) 18:36:38.06ID:???
>>366
$('.aaa').removeClass().addClass('aaa');
       ↑
これのどこに最初のclassの数云々考える必要があるの?
結果は class="aaa" しかあり得ないだろw
>>361がclassが複数あるとか質問に沿わない自己解釈しているから言ってるだけ
なんで必死に絡んでくるのか意味不明
0368Name_Not_Found
垢版 |
2018/02/13(火) 18:40:19.22ID:???
$().addClass('aaa'); とかしたら
jQueryが「classNameはaaa以外にありませんか?」とか一々聞いてくるのかよw
0369Name_Not_Found
垢版 |
2018/02/13(火) 18:50:09.93ID:???
「最初つけるclassは1,2個」の意味を考えましょう
0370Name_Not_Found
垢版 |
2018/02/13(火) 19:25:41.84ID:???
質問を見れば最後は"aaa"のみで完結してるじゃん
これ以上でも以下でもないと思うが外野の勝手な連想で
ただ意味をこじ付けているだけにしか見えない
学校で先生に問題はよく読みなさいと教わらなかったのかな?
0371Name_Not_Found
垢版 |
2018/02/13(火) 19:30:38.52ID:???
>>140
> .aaaに動的に付けたclass(bbb ccc ddd・・・)の削除や付け直しを一括でしたく
> $('.aaa').removeClass('bbb ccc ddd・・・');
> を
> $('.aaa').removeClass().addClass('aaa');
> とするのはあり?
0372Name_Not_Found
垢版 |
2018/02/13(火) 20:18:34.50ID:???
>>361
両方ともやりたくないとは言ってないよ

やりたいことは
$('.aaa').removeClass().addClass('aaa'); または
$('.aaa').removeClass().addClass('aaa bbb');

つまりccc ddd・・・を消したいと
0373Name_Not_Found
垢版 |
2018/02/13(火) 20:31:16.92ID:???
>>332
そういうの荒れるからやめてくれ、マジで
ここ参考になるのに
0374Name_Not_Found
垢版 |
2018/02/13(火) 21:13:39.59ID:Y812Cm0N
もーめんどくせーから
$(function () {
$(".aaa").each(function () {
$(this).data("originalClass", $(this).attr("class"));
});
}
して、必要に応じて
$(".aaa").each(function () {
$(this).attr("class", $(this).data("originalClass"));
});
するとかw
0375Name_Not_Found
垢版 |
2018/02/13(火) 21:45:46.50ID:???
>>372
$('.aaa').attr('class', 'aaa'); または
$('.aaa').attr('class', 'aaa bbb');
いわゆる初期化だろw
0376Name_Not_Found
垢版 |
2018/02/13(火) 21:49:29.59ID:???
>>372
> やりたいことは
> $('.aaa').removeClass().addClass('aaa'); または
> $('.aaa').removeClass().addClass('aaa bbb');
>
> つまりccc ddd・・・を消したいと

$('.aaa').text('').text('aaa bbb');
こんなことやりたいの?
0377Name_Not_Found
垢版 |
2018/02/13(火) 23:19:16.08ID:???
>>370
ほんとそう思う
自分目線でこうあるべきと勝手に進めてるのが一部
0378Name_Not_Found
垢版 |
2018/02/13(火) 23:37:29.22ID:???
>370
> 質問を見れば最後は"aaa"のみで完結してるじゃん
あんたの言う最後は>>140のことかな?

>>143でこう言ってるのは無視してるのかな?

> そうなんだけど・・・の管理が面倒で
> 変更の度にそこも付け加えなくてはならなくて
> 最初つけるclassは1,2個と少ないので楽かなと
0383Name_Not_Found
垢版 |
2018/02/14(水) 08:27:10.60ID:???
$('.aaa').attr('class', 'aaa');
 or
$('.aaa').attr('class', 'aaa bbb');

これが理にかなってると思う
0384Name_Not_Found
垢版 |
2018/02/14(水) 09:15:17.52ID:???
>>383
ただそれだとデザインの都合で
別のクラスが追加された時に
メンテナンスが必要になるんですよね
どうにかなりませんか?
0385Name_Not_Found
垢版 |
2018/02/14(水) 12:22:19.19ID:???
>>384
> $('.aaa').removeClass().addClass('aaa'); または
> $('.aaa').removeClass().addClass('aaa bbb');

これをやるなら>>383の方がスマートで理論的と俺は見た
理由は最終的には'aaa'(単一)か'aaa bbb'(複数)のクラス名に意図的に置き換えるから
基本に数値にしても結果がわかっているなら num = 10 で良い、無理に nam = x + y などは不要
これはどんな言語でも同じこと
0386Name_Not_Found
垢版 |
2018/02/14(水) 12:28:37.87ID:???
>>385
デザインの都合でっていう話は完全無視?

<span class="aaa"> とあって、
デザイナーが この部分フォント大きくしたいなとか思って
<span class="aaa hoge"> みたいに変更すると
JavaScriptのコードの変更まで必要になってしまうんだよ

他にもclassってことは複数のaaaがあることが想定されるが
一つは <span class="aaa hoge"> 、もう一つは <span class="aaa hage">
だったりしたら、困るだろ

HTMLはプログラマとデザイナで共有している所だから
お互いに相手に影響を与えないようにしないといけない
0387Name_Not_Found
垢版 |
2018/02/14(水) 12:49:45.12ID:???
>>386
お互いに相手に影響を与えないようにしないといけないんだったら
気軽にお互いがsourceを都合で勝手に変えるもんじゃないだろw
共有しているのなら連携して修正しないとね
0388Name_Not_Found
垢版 |
2018/02/14(水) 13:05:22.51ID:???
>>387
連携っていうのは、受け渡しの部分を最小限にして
お互い独立して作業ができるようにすることだぞ

何もかもがお互いに影響していたら
連携というより相手の作業を邪魔することにしかならない
0389Name_Not_Found
垢版 |
2018/02/14(水) 13:21:26.96ID:???
影響を受けないように気をつけて作るのが仕事なんじゃないでしょうか・・
0390Name_Not_Found
垢版 |
2018/02/14(水) 13:33:01.69ID:???
そうだね。だからデザイナーがclassに付け足しても
コードは影響がないように作るって話なんだよ
やっとそこ(自分の担当外の仕事)まで考えられる人がでてきたか
0391Name_Not_Found
垢版 |
2018/02/14(水) 14:25:48.56ID:???
>>386
インスタンスメソッドぐらい作成しろよ
静的に追加したclassNameには 'org-' など任意の文字列を埋め込んでおいたら問題ないだろ?

$('$.fn.extend({
restoreClass: function () {
let arr = [];
$(this).attr('class').split(' ').map(function (a, b, c) {
a.indexOf('org-') !== -1 ? arr.push(a) : void 0;
});
return $(this).attr('class', arr.join(' '));
}
});

$('.org-aaa').restoreClass();
0392Name_Not_Found
垢版 |
2018/02/14(水) 14:27:19.30ID:???
誤:$('$.fn.extend({
正:$.fn.extend({
0393Name_Not_Found
垢版 |
2018/02/14(水) 14:31:24.34ID:???
>>391
> 静的に追加したclassNameには 'org-' など任意の文字列を埋め込んでおいたら問題ないだろ?

> それは俺が>>210で提示したやり方ですね?
そんなコードを書くのが無駄だと言ったコードを
わざわざ書くとはw

> としなければいけなくなるということ
> そして、色やサイズのパターンが増えたらどうすんの?ということ
>
> ま、無理やりやろうとするなら、classの値に特殊な名前つけルールを作って
> そのルールを解釈して操作する関数を作るなんて "無駄なこと" をやればできるがねw
> > whiteとではなくcolor-whiteみたいにプリフィックス付けて全部列挙して color- だと・・・無駄だなw
0394Name_Not_Found
垢版 |
2018/02/14(水) 14:35:24.91ID:???
>>393
デザインの都合でで使うクラス名の管理はデザイナーのお仕事ですw
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況