+ JavaScript & jQuery 質問用スレッド vol.8 +
■ このスレッドは過去ログ倉庫に格納されています
JavaScript を自ら学ぶ人のための質問スレッドです。 >>2-4 のテンプレを読んだ上で質問してください。次スレは>>950 が>>2 のテンプレ案(本スレで改善案があれば考慮)を元に立ててください ■質問を書く上で (1) 煽り、コード制作依頼等、人を不快にさせる投稿はご遠慮下さい。公序良俗を守った応対を心がけてください。 (2) 他の人に迷惑をかけるスクリプトの質問はご遠慮ください。 (ブラクラ、[戻る], [閉じる], [クリック] の妨害、画面占有など) (3) 質問者及び議論を行う人はメール欄を空欄にし、名前にレス番を入れることを強く推奨します。回答者はなりすましを判断できませんので、なりすましが現れても自己責任となります。 (4) 常に自発的に調べる心構えを持ってください。 具体的には「自分で調べてから質問する」「回答をもらってわからない単語があればGoogle検索してみる」など。 わからない内容を代わりに調べてくれる回答者をお望みの方は余所で質問してください。 (5) 出来るだけ一般的な用語を使用してください。脳内オレオレ用語は混乱の元です。 (6) 出来るだけサンプルコードを掲示してください。言葉による説明は行き違いが生まれる場合があります。 ※必ず「問題の事象が再現されること」を確認してください。 必要な部分だけ切り出したつもりで現象が再現できていなかったケアレスミスがしばしば見られます。 (7) サンプルコードに HTML が含まれる場合は http://validator.w3.org/ で [Check] してみてください。 (8) 質問を具体的かつ詳細に書くと回答を得られやすいです。>>2 の質問テンプレートを活用してみてください。 (9) 時にはあなたが望む「答え」だけでなく、「意見」などが寄せられる場合もあります。 + JavaScript & jQuery 質問用スレッド vol.7 + [無断転載禁止]©2ch.net http://mevius.2ch.net/test/read.cgi/hp/1467906819/ >>36 どうもです。思ってた以上に入り組みますね。 元文のまま2行でやるか関数作ろうかと思います。 function func(str){ mem.lastName = str; mem.setName(); } chromeのデベロッパーツールの表示について質問です。 画面右の赤線で囲った部分を、画像左の赤線内と同じHTMLの表示に変える方法を教えてください。 https://dotup.org/uploda/dotup.org1486462.jpg >>35 >メンバーというクラスなのに、固定要素への書き出しのメソッドを持つのは変 どう変?正解コードプリーズ。 >>70 左の画像には、<div class="form-group"> とあるけど、 右の画像には無い 左右は、全く異なるものだから、関係性がない http://klutche.org/archives/682/ すいません、このサイトでDIVブロックコンテンツをクリックで切り替えってのやってるんですが これ2DIVを同時制御したんですが、この場合どうやればいいんですかね? 該当ソースの↓ var activeTab = $(this).find("a").attr("href");//アクティブタブコンテンツ $(activeTab).fadeIn();//アクティブタブコンテンツをフェードイン var activeTab = $(this).eq(2).find("a").attr("href")とかnext();とかやってみたんですがだめでした <div class="tab_content" id="tab1"> <img src="01.jpg" width="200" height="150" alt="01"><br> コンテンツ1 </div> ↑のブロック2つ続けてコピペ、同時表示したいのです id="tab1" って書いてあるだろ セレクターに、$('#tab1') を使え MonacaとAngularJSで開発を行っているのですが、時刻を取得し更新するプログラムが動きません。ソースは次のとおりです。 【JS】 <script> var module = ons.bootstrap("myApp",[]); module.controller('MainController',function($interval){ var date = new Date(); var now_hours = date.getHours(); var now_minutes = date.getMinutes(); var now_seconds = date.getSeconds(); this.hours = now_hours; this.minutes = now_minutes; this.seconds = now_seconds; $interval(function(){ date = new Date(); now_hours = date.getHours(); now_minutes = date.getMinutes(); now_seconds = date.getSeconds(); }, 1000); }); </script> 【HTML】 <body> <ons-navigator page="main.html"></ons-navigator> <ons-template id="main.html"> <ons-page ng-controller="MainController as ctrl"> <div class="content" style="text-align: center;"> <p>現在の時刻<br />{{ctrl.hours}}時{{ctrl.minutes}}分{{ctrl.seconds}}秒</p> </div> </ons-page> </ons-template> </body> 一応、実行時の時刻は表示されるのですが、intervalで時刻の更新ができていません。 console.logでnow_secondsの内容を出力させてみると(intervalで)、きちんと取得できているみたいです。 ということは時刻が反映されていないだけだと思うのですが、その方法をどなたかご教示願います。 (ソースコードが見にくいのはすみません。投稿の際の改行数が多いみたいで...) ここはjQueryのスレなのでこっちでどうぞ + JavaScript の質問用スレッド vol.132 + https://mevius.5ch.net/test/read.cgi/hp/1520329583/ リンクをポップアップで開く系のjQueryプラグイン使ってるのですが Biggerlinkでリンクをdiv要素に拡大させた部分をクリックすると通常ウインドウで 開いてしまいます これをうまく回避する方法はありますか? >>80 残念ながらjQueryのプラグインの話はこのスレの対象外なんだよ jQueryは世界中で多くの人が使っているが、 そのプラグインを使ってる人は少ないだろ? そんな話をされても使ってる人がいない jQueryの話ではなくそのプラグインの話になってしまう Biggerlinkとやらを見るとjQuery 1.3と書いてあるし 10年ぐらいの前のものだし別の使ったら? とは言いますが他のスレではjQuery自体の話題が禁止されてたりもしますし ここ以外で聞ける場所が見つかりません 罪のない包皮を切り刻んでぼったくった金で飯食ってるやつが偉そうに jQueryUI みたいな有名なプラグインなら、使っている人も多いだろうが、 そんなに昔の、近頃開発されていないようなプラグインは、 代わりのものを探した方が良い biggerlinkは代わりのものがないんだよな html5になってブロック要素をリンクできるようになったとはいえ リンクが複数だとこれ使わないと面倒だし <div class="biggerlink"><a></a></div> SASS で、<a>タグがあれば、 その親タグに、<div class="biggerlink">を追加するような、機能は無いのか? それか、jQuery で自作するとか は? そのbiggerlinkとやらがまともなjQueryプラグインなら $('a').biggerlink() とかするだけだろ つーかBiggerlinkって何かと思えば http://otani-webs.com/lab/javascript/100823.html > box全体にリンクを適用させる場合、divをaタグで括るわけにいかないので苦労するわけですが、 言ってることが古い。HTML5になった今はdivをaタグでくくればいいだけ こんなもん完全にいらねーじゃねーかw >>90 div要素にaタグ複数入れる場合は html5じゃできねーだろ > div要素にaタグ複数入れる場合は <div> ・・・div要素に <a href="">1</a> ・・・ aタグ <a href="">2</a> ・・・ 複数入れる <a href="">3</a> ・・・ 場合は </div> ・・・昔からできますがなにか? すごくないしw 普通 というか>>91 が何ができないと言ってるのかさっぱり分からん 少なくともdivにaタグ複数入れられるし、 逆にaタグにdivだって入れられる ということでBiggerlinkは捨てろが正解 >>94 >>91 じゃないから本意はわからんけどさすがに君が状況を理解できてなさすぎだろう HTML5では <a href="./page1.html"> <div> </div> </a> はいいけど <a href="./page1.html"> <div> <a href="./page2.html></a> <a href="./page3.html></a> </div> </a> これができないと言いたいのでは? >>95 そういうときは普通の人はaタグのネストというんで ぜったいに違うね。(もしそうならそいつが馬鹿) どう考えてもdivにaタグ入れられないなんて主張してるわけないだろ バカすぎワロタ いや? >>91 が言うには > div要素にaタグ複数入れる場合は > html5じゃできねーだろ らしいぜ?w 話の流れを読めてないのはおまえやで 恥の上塗りすんなよ恥ずかしいやつだな > div要素にaタグ複数入れる場合は というのが aタグの中にaタグを入れるという意味だとしたら、 そもそもaタグをネストしてどうするつもりだって話になる。 リンクの中に別のリンクを入れるって意味不明だし どんだけサイト制作の経験少ないねん 例えばだけどRSSリーダーを作るとする 記事ひとつに対してカード型のDiv要素を作ってその中に 画像とタイトルに記事へのリンク サイト自体へのリンク お気に入りに追加するボタンやその他操作リンク を入れるとする スマホからのアクセスを考えるとカード型Div要素全体を記事へのリンクにしておきたい この場合がまさにそうだろ 俺はこういった場合別の方法で回避してるけどね そうだよな。その別の回避方法を使えば良いわけで aの中にaを入れるとか使いづらくしてるだけだわw 許されるよ ごみみたいなサイトをつくってあれはおかしいこれはおかしい といってるやつよりFeedlyやInoreaderを作ってるやつの意見のほうが貴重 そういう事言うのやめなよ PV100/dayのサイトで何が悪い? コーディングは完璧だぞ? まさかと思ったけど、div要素をクリックしたら ページを移動させるためだけに、あんなプラグイン使ってるの? 5行ぐらいか多くても10行も行かずに作れそうなのに じゃあ作れるっていうよw 1. セレクタ & イベントハンドラ ( 2. デフォルト処理キャンセル 3. リンク先情報取得 & オープン 4. 括弧閉じ ) やることと言ったら、これぐらいなもんだろ >>103 >>102 じゃないけど、それぐらいすぐに思いつかないと プロ失格だぞ。プロじゃないかもしれないけどw relativeとabsoluteを使えばいいだけ aの中にaとかアホすぎるw >>102 がまだまだ未熟に感じるのは クリックできる場所と、リンクするもの が違うってことを理解してないからだね リンクがクリックできるのはブラウザが提供している機能であって リンクは単に他のページ(リソース)とリンクしているという情報なだけ だからdiv要素全体をクリックしたいのと div要素全体をリンクにするというのは意味が違う div要素が仮に記事へのリンクだとしたら、 div要素の内容と記事がつながっているわけで、 そこにサイト自体へのリンクが入っていることはおかしい。 なぜならリンクしてないから 「お気に入りに追加するボタンやその他操作リンク」と書いているが これは他のリソースへのリンクではないので、a要素を使うのは間違い (その他の操作の内容にもよるが、少なくともお気に入りに追加はリンクではない) a要素をリンク可能な場所みたいに考えてるから、変な構造を作ってしまう。 何と何をつなげるのか?で考えれば自ずと、記事を表すの中に入れるのは間違いだおt 気づくはず。そのうえで見た目をどうこうしたいのであればそれはCSSの役目 >>115 おっしゃお気に入り追加ボタンをa要素で実装してる inoreaderに説教してこい ねぇ? >>115 に 反論はしないの? 大手だって間違えてるぞ!って言われても はい、大手でも間違えますとしか言いようがないんだが クレームつけるのは自分でやってくれって話 ここで説教はしますけど大手は怖いから説教しませんw じゃあここに大手読んできたら? なんで自分で反論せずに、大手様に反論して貰おうとしてるのさw 自分で反論する能力がないからに決まってるだろがー! そもそも反論する必要あんのか? 何と戦ってるのこの長文マンは 頭大丈夫か?統合失調症ちゃうか なのに反論してみろって喧嘩ふっかけてて怖いな 被害妄想過ごそう 「大手もやってるから俺も正しい」しか主張出来んのだろ 大手だからこそバリデーションくらいして欲しいわ 顔真っ赤な奴ばっかだな なんでこう誰でもできるような低賃金言語ってこうもすぐ荒れるかな もっと他のことにプライドもてよクソ共 誰でも日本語書けますが、プロは日本語を書いて大金を稼いでいます 一番js書いてんのがgoogle オフィススイート全部jsで書くとか悪夢だ… しかもtypescript無い時代に… え? Google はGWTとか使ってるんでしょ? Javaで作ればJavaScriptも作ってくれるとか? もしかしてもうオワコン? ゴミをたくさん作ってるのもGoogleだなw 685Name_Not_Found2018/03/28(水) 22:28:13.59ID:??? >>682 いや、そんなにないと思う どちらかと言えばそれは当てはまるもの全てに処理したいから、class使ってねということだろう そういう場合はカスタムエレメントでも使ったほうが良い そうすれば要素が作られた時、挿入されたときに即座に適宜処理ができるんだから あとから要素をclassで検索して機能を付与するとか、 スマートな解決策のように見えるかもしれないけど、それって実際はただのハックだからね? どっかの誰かが作った物があって、それに対してハックしたいなら非常に便利が良いと思うよ でも今どき、オマケでJSによってページを補正するみたいな開発や考え方はしないからね HTML5の勧告に纏わる公式文書にも書いてあったけど、 HTMLっていうのはアプリケーションプラットフォームになってるんだよ つまり土台であって、その上にJSとか乗っかって1つのものができるわけ それが横並びだとか、化粧程度だとか、もしくはJSはHTMLを改造するためのドリルみたいに 捉えてるのだとしたら、その考え方は古臭いと思うよ 686Name_Not_Found2018/03/28(水) 23:31:40.90ID:??? > そういう場合はカスタムエレメントでも使ったほうが良い そのカスタムエレメント作る用途で使えるって話でしょ? っていうか、どうやってそれ作るの ちょっとサンプル書いてみてよ 687Name_Not_Found2018/03/28(水) 23:32:38.83ID:??? > HTMLっていうのはアプリケーションプラットフォームになってるんだよ それは一部の話ね。 ブログ、ニュース、企業サイト、情報掲載と、 これらウェブの大半はアプリケーションじゃない jq関係ないけど HTMLがアプリケーションプラットフォームって考え方は ぶっちゃけ危険極まりないよね・・・ >>136 俺もそう思う。 HTMLで文書じゃなくてアプリケーションを作るっていうのは ごく一部だよ 大抵はHTMLとCSS、そしてJavaScriptでちょっと味付け これから変えていこう!なんて波は来てない 素のJS のremove では、動かないブラウザがあるから、 素のJSでは、661 のように書く だから互換性が高い、jQuery のremoveを使った方がよい 一々、各ブラウザの機能を調べて、素のJSで対応するのが面倒くさい。 古いブラウザを使っている奴もいるし classに対して処理振るのが最善なケースってどんなのがある? 同じ処理つけたい要素を不定数生成しなきゃいけないときは createElementの時listenerつけたりhandlerの内側でやらせる手がある classで処理振ると他の場所でclassを 使いまわしされたら想定外のバグが出そう 個人レベルの小規模なら問題にならないかもだけど >>139 それ単にクラスの名前つけルールが無いと困るって言ってるだけだよ。 CSSでも発生する問題 .enabledというクラス名を付けていたら、 他の場所で使い回されて困った。 これと何も変わらん >>140 デザイナはcss変えたために自分の領域で問題が出ればすぐ把握できる けどjavascript側で問題が出てもわからない だから切り分けが大事 カスタムエレメントどうやって作るの?という質問の意味が分からない 好きな要素をextendsしてregisterElementするだけじゃないか そこにjQueryを使う?好きにしたら良いと思うが、 やっぱりjQueryありきの考え方だねと言わざるを得ないね でも他のライブラリとかも使うかもしれないし、 jQueryで処理しちゃあ生要素に戻して他で処理するみたいなクソコードになると思うよ それなら最初からjQUeryで完結させたほうが良い jQueryはそういう他との相容れなさが欠点だからね remove()が使えない? 使いたい機能があって使えない環境があるなら ポリフィル書くなり用意するなりすればいいじゃないか そんな100も200も要るようなことなんて無いしね それが面倒だからjQuery使うというのはOK だけど最初から使ったほうが良いという考え方はNG この違いが分かるか? 結局jQueryありきの価値観の人達って、他と相容れないjQueryを使いすぎて 例えばちょっとポリフィルを作って数個の素朴なライブラリを組み合わせて使うとか、 他のフレームワークを使った方が今回は良いんじゃないかとか考える能が無くなってるんだよ jQueryだってやり方によっちゃ組み合わせて使える力も持ってるけど 上のカスタムエレメントの件で分かるように使いこなせてないしね 要するに考え方がいつまで経っても超古臭くて閉鎖的なんだよね とりあえずjQuery使っとけばいいだろうみたいなのはやっぱり良くないよ 物は1つ1つ考えて良く使わないと 他と相容れないってw JavaScriptに取り込まれてること自体が jQueryの多大な貢献を示していると思うけど >>143 > カスタムエレメントどうやって作るの?という質問の意味が分からない > 好きな要素をextendsしてregisterElementするだけじゃないか だから、このスレか、jsfiddleなどに 実際に動くコードを一つ書くだけですよ。 通常四行必要なところが三行になります!とか 一行で書けます!とか そんなせせこましい次元じゃなくて 100行必要なところが1行になります!とか 一般に実装されてなくて個人で実装するには難易度が高い関数が使えます! とか、そういうのないの jQueryを否定できるのは生JavaScriptではなくて jQueryを超克したライブラリだと思います そういうライブラリないんですか? ちゃんと安価先を修正してコピペしてて草というか感心した >>147 例えば今は必要性薄くなってきたけどsha512使うためのライブラリとか zip/unzipするためのライブラリとか 自分で書くには行数すごくなるしいろいろと問題もある むしろライブラリってこういうのが基本で jQueryみたいなのは今やどっちかっていうと 「ショートカット集&ポリフィル集」じゃないの? 悔しかったらjQueryに勝るシンプルなsource書いてね jQueryの代替を提供してるのはフレームワークばかりの感じがします 置き換えたらDOM操作以外の余計なものまで付いてくるので困りますね なにせjQuery君によるとDOM操作用のライブラリでは無いらしいからな。 >>146 > 通常四行必要なところが三行になります!とか > 一行で書けます!とか > そんなせせこましい次元じゃなくて 四行必要なところが一行になったら1/4 1000行が250行になるんだが >>151 > むしろライブラリってこういうのが基本で > jQueryみたいなのは今やどっちかっていうと > 「ショートカット集&ポリフィル集」じゃないの? 数式だよ 「変数Xに5を加えたものを三倍する」 冗長だね (X + 5) * 3 短い jQueryは冗長な表現を短くすることができる これにより可読性が高くなりレビューしやすくなるしバグも少なくなる。 簡潔な表現方法を知っていれば、あえて冗長に書く理由がない jQueryがライブラリじゃないというのなら もっと基本な文法に相当するものだと言うよ。 それでjQueryちゃんは ○文字節約できます! 以外にどんな機能を提供してくれるの >>159 関数型風のプログラミング機能 あと機能じゃないが開発工数の削減と バグを減らしてくれる 開発工数の削減って○文字節約できますを言い換えただけだろw 開発工数の削減ってそんなに重要なことなのかって話だよ >>143 横から申し訳ない カスタムエレメントってどういうときに使うもの? いまいち理解できんのでよかったら教えてくれ カスタムエレメントがほしいって思ったことがない つまりHTMLパーツのコンポーネント化っていう 概念がなくて行き当たりばったりでCSSでデザインしてるだけ こういうやつもいるからjQueryでクラス使って コンポーネントに対して処理をする便利さが理解できないんだろうな ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.5 2024/06/08 Walang Kapalit ★ | Donguri System Team 5ちゃんねる