のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,062,934人
昨日:no data人
今日:
最近の注目
人気の最安値情報

    元スレjQuery 質問スレッド vol.8

    JavaScript覧 / PC版 /
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter

    553 = :

    結局toggleClassはどうなったんだっけ

    556 = :

    >>553
    何をしたい?

    558 = :

    const君なんていたのかw

    559 = :

    優秀な書き込みは全部俺♪

    560 = :

    キモ

    561 = :

    >>548って最初の質問の時点で読み取れるよな
    勝手に問題、困ってると解釈して勝手に修正しようとしてたわけだ

    562 = :

    data君の攻撃は止まらない

    563 = :

    > >>548って最初の質問の時点で読み取れるよな

    その次のレスで覆ったんだよ

    564 = :

    data君は自分が優秀だと思っている
    こんなところにいる底辺な奴らに自分が馬鹿にされていいわけがない
    そうだ、明らかに馬鹿なこいつを煽ってやろう
    馬鹿なこいつは自爆するからそこを追求してやればいい
    そうして、皆が自分を優秀な人間だと認めるだろう

    565 = :

    相変わらず中身が無いことをべらべら喋るなw

    566 = :

    date君のプロファイリングか

    567 = :

    早く煽ってやれよw

    568 = :

    data君はお山の大将

    569 = :

    >>563
    次のレスで解決しとるよw

    570 = :

    >>569
    次のレスってどれのこと?


    質問者: 140 名前:Name_Not_Found[sage] 投稿日:2018/01/28(日) 10:57:06.54 ID:???
    > .aaaに動的に付けたclass(bbb ccc ddd・・・)の削除や付け直しを一括でしたく
    > $('.aaa').removeClass('bbb ccc ddd・・・');
    > を
    > $('.aaa').removeClass().addClass('aaa');
    > とするのはあり?

    質問者への問題点の指摘: 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個と少ないので楽かなと

    質問者の次のレスを解説すると

    1. そうなんだけど => 問題点への指摘の同意
    2. ・・・の管理が面倒で => 面倒な部分
    3. 変更の度にそこも付け加えなくてはならなくて => ・・・の部分が変わる
    4. 最初つけるclassは1,2個と少ないので楽かなと => 個数は不明だが、少ないのでまだましだということ

    これに対してdata-*属性を使った場合は、全ての問題が解決する

    571 = :

    なるほど

    572 = :

    まだやってたのかw

    573 = :

    classは論外だが何でもかんでもdata-に頼るべきではない
    <custom-postit data-form=circle
    のように基本的に使うものであって、
    ある特定のJS内で完結する場合の要素へのデータの紐付けはWeakMapを使うべき

    574 = :

    >>570
    まだ続けたいのか

    >>573
    kwsk

    575 = :

    弱くて迷いそう。ストロングナビ使いたい。

    576 = :

    >>574
    詳しく言うとJS内で完結するというのは主にCSSと連携しないってことだよ
    CSSからJS内の変数は読み書きできないから変数の値が○○の時に色を変えるとかはできない
    data-ならCSSと連携できるがそれが必要ないなら場合はJSでいい

    もともとは全部classに入れていたわけだけど、classをCSSと連携しない使い方をしてるなら
    data-ではなくJS側に全部持ってこれるということ
    今回がどっちに当てはまるのかはしらないけどね

    577 = :

    ん?元はclass使っていたってことは、CSSと連携したいってことでは?
    しきりにWeakMapを連呼してるのは、オブジェクトが消えてもメモリリークが
    起きないってことを言いたいのかもしれないけど、それはjQueryのdata()メソッドでもできること
    (質問者がdata()メソッドの存在を知らなかった可能性はあるけど)


    http://api.jquery.com/jQuery.data/
    > The jQuery.data() method allows us to attach data of any type to DOM elements in a
    > way that is safe from circular references and therefore from memory leaks.
    > We can retrieve several distinct values for a single element one at a time, or as a set:

    もともとclassを使っていた以上CSSと連携させたいと思うのが普通で
    それをJS側に持ってこれるとは思わないな。

    578 = :

    > ん?元はclass使っていたってことは、CSSと連携したいってことでは?
    ただの思い込み

    579 = :

    その理屈で言えば、WeakMapでできるというのも思い込みなわけで

    581 = :

    >>579
    最初はそれに気づかずに、CSSと連携できないって
    指摘されて意見を変えたみたいねw

    582 = :

    言っとくけど俺は573以降ここまでレスしてないから
    それに意見を変えたって、一体どういうこと?
    意見は全部573に含まれてて完結している

    書いたとおり、要素とデータを結びつけるときには必ずしも要素の属性を利用しなくとも
    WeakMapの方が勧められる『場合もある』と言っただけ
    そしてその理由は主にセマンティクス上のもので機能の優劣を述べたつもりもない

    間隔としてはグローバル変数をむやみに使うなと同じような小言
    それ以上でもそれ以下でもない
    大人ならすぐ他人を煽ったり話を茶化して非建設的な流れに持っていくのは辞めろ

    583 = :

    >>576
    文は長いが書いてあること全然詳しくないのだが
    具体的にお願いできないかな

    584 = :

    >>583
    最初から意見かえたのか?

    >> 438
    > まだやっていたのか
    > 静的につけたclassが動的処理で消える問題を考慮するなら、data-*もclassも同じ問題を抱えてる
    > WeakMapを使えば良いだけ

    585 = :

    >>582
    タグのclassを使う代わりに、JavaScriptの変数にしろっていう意見でOK?

    586 = :

    要するにそれを使ってスタイルを当てる、とか
    カスタム要素で利用する属性である、とか
    他のライブラリやモジュールから利用される、とか
    第三者と共有する必要があるために、データをおおやけにする意味があるならいいが

    そうでなくJSで自分自身の閉じた空間内でメモ書きがしたいだけなら
    要素の属性を使うのは下品じゃないかということだろう

    587 = :

    >>585
    一番言いたいことは、そういう方法も使えるのに要素をデータを結びつけるためには
    普通要素の属性を使うもんだと考え方が狭くなってないか?ということ

    それと一般的抽象的に考えて、オブジェクトとデータを結びつける効果的方法である
    WeakMapをもっとどんどん使っていこうよという意見

    588 = :

    いや、class属性でやっていたものをWeakMap使えばいいっていうのが
    必ずしも正しくないって話だろ。cssで使えないんだから
    なんでもかんでもWeakMapで解決するような言い方をするからいかんのだ

    589 = :

    >>587
    > 一番言いたいことは、そういう方法も使えるのに要素をデータを結びつけるためには
    話がずれてるよ

    要素とデータを結びつけたいなんて誰も言ってない
    class属性のメンテナンスが面倒くさいって話をしてる

    590 = :

    >>588
    自分はWMを使う方が良いケースもあると言っただけであって
    なんでもかんでもWMでなんて一言も言っていない

    >>589
    それを言っちゃあそもそも論が出てきた最初の質問から5スレ後には既にずれてて
    今や一般的な話になっている
    そのクラスだって単にjQから利用するためのラベル付なのかもしれないしね

    591 = :

    >>589
    要はsourceの意図
    classにしても class="*-aaa, bbb" とか部類の意図を把握できればそれで良いんだよ
    data-*="hoge" にしても結局は製作者の意図によるもの
    ま、個々の勝手だが

    592 = :

    >>584
    > 最初から意見かえたのか?

    何言ってるかわからん
    誰か別人と勘違いしてないか?

    593 = :

    >>587
    それは一理ある

    >>589
    >class属性のメンテナンスが面倒くさい
    それってdata君の言い分だよな

    少なくとも質問者はそう思ってない
    もっといい方法もあるよももっともだが質問者は断ってるしな

    594 = :

    >>590
    > 自分はWMを使う方が良いケースもあると言っただけであって

    それをいうなら、俺だって今回のケースでは
    data-*属性をつかうと良いというだけで、
    すべての場合でdata-*属性を使えなんて言っていない

    つまり、俺が今回の問題に対してレスしている所に横から割り込んできて、
    今回の問題とは無関係な話を始めたお前がおかしい

    595 = :

    >>593
    > それってdata君の言い分だよな
    質問者が言ってるよ

    ↓ほらね

    143 名前:Name_Not_Found[sage] 投稿日:2018/01/28(日) 17:27:37.90 ID:???
    > >>142
    > そうなんだけど・・・の管理が面倒で
    > 変更の度にそこも付け加えなくてはならなくて
    > 最初つけるclassは1,2個と少ないので楽かなと

    596 = :

    >>591
    > classにしても class="*-aaa, bbb" とか部類の意図を把握できればそれで良いんだよ


    その話は>>210で俺がすでにしてる

    > ま、無理やりやろうとするなら、classの値に特殊な名前つけルールを作って
    > そのルールを解釈して操作する関数を作るなんて "無駄なこと" をやればできるがねw
    > whiteとではなくcolor-whiteみたいにプリフィックス付けて全部列挙して color- だと・・・無駄だなw

    597 = :

    >>594
    自分が言いたいのはその2つのどっちが優れているかではなく、
    他の有効なやり方だってあるんだし、細かな意味的なことだって重要
    だからそれぞれ適材適所バランス良く使おうねということ

    今回のケースにしたって情報が不足してるんだからこれが最適だとかいう回答はできないから揉めている
    結果一般論的にこれまでの全ての流れを踏まえて勝手なまとめ的にそういった感想を述べたまでで
    君に当て付ける気なんて微塵もないし、完全に被害妄想

    598 = :

    >>596
    無理やりとかw
    どちらにしてもhtmlとしては個人の単なる部類に過ぎないし、文書構造からして無意味なこと
    あくまで主観に過ぎない

    599 = :

    >>595
    横から失礼
    data-*にしてremoveClass()の部分はどうすんの?
    得体のしれないclass(相当)がある場合とない場合で

    600 = :

    >>599
    話を再確認しようか?

    今回の話はdata-*属性を使ったら楽に実装できるという話であって
    今回の話にremoveClass()が必要か?という話を先に決めないといけない

    答えを言うと今回の話にremoveClass()は必要ない


    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

    類似してるかもしれないスレッド


    トップメニューへ / →のくす牧場書庫について