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

私的良スレ書庫

不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitter
ログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。

元スレ+ JavaScript の質問用スレッド vol.118 +

JavaScript スレッド一覧へ / JavaScript とは? / 携帯版 / dat(gz)で取得 / トップメニュー
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
レスフィルター : (試験中)
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 / 要望・削除依頼は掲示板へ / 管理情報はtwitter
951 : Name_Not - 2014/08/27(水) 21:50:14.84 ID:???.net (+26,+25,-3)
>>947
CSSは結構イジる方だから大丈夫かな?
953 : Name_Not - 2014/08/27(水) 22:33:38.54 ID:???.net (-18,-30,-111)
>>951
まあCSSって言っても正確にはセレクタだけどね。

セクレタを知っていればあとは

$('.hoge input[type="checkbox"]').prop('checked', true);

たったこれだけで.hoge以下にあるチェックボックスの全てをチェックできたりする。

([type="checkbox"]はjQueryの拡張された擬似クラスの:checkboxが使えるけど)

複数の要素を処理するライブラリとして抜群に使いやすいよ。
954 : Name_Not - 2014/08/27(水) 22:40:00.27 ID:???.net (+25,+29,-7)
>>953
レス保存しとくわ
丁寧なアドバイス有難う
955 : Name_Not - 2014/08/27(水) 22:45:30.10 ID:???.net (+31,+28,-29)
面倒と言っても単にループするだけなので単純だし
おそらく内部ではeachなどでループ回数分関数を呼んでいるので、
普通のfor文で書くだけで高速化出来ます
956 : Name_Not - 2014/08/27(水) 22:57:29.35 ID:???.net (+37,+30,-183)
>>955
書く時の話をしてるんじゃないんだよ。

書くのはループしてもjQueryでも実はどっちでも変わらない。
なぜならコピペすればいいから。
定型文として辞書登録でもしておけば簡単に書ける。

だけど、書く時の話を問題視しているんじゃない。

プログラムっていうのは書くよりも読むときの方が長い。
「可読性」という言葉はよく使われるが「可書性」とは言わないだろ?

ループを使って書くと、本当にループ以外の余計なコードを書いてないのか?
ちゃんとループに使ってる変数名はあっているか?
同じようなコードに見えるが本当に同じなのか?
細かい所が違っていないか?って気にしないといけない。

(書く量ではなく)読む量を減らすことで、そういう無駄な時間を大幅に減らせる。
957 : Name_Not - 2014/08/27(水) 23:18:04.00 ID:???.net (-27,-30,-89)
<h2>めにゅー1</h2>
<ul>
<li>めにゅー1-1
<ul>
<li>めにゅー1-1-1</li>
<li>めにゅー1-1-2</li>
<li>めにゅー1-1-3</li>
</ul>
</li>
</ul>

こんな感じでアコーディオンの中にドロップメニューって実装できないですか?
想定ではアコーディオンは水平方向に開いてドロップメニューは横に出るイメージです
958 : Name_Not - 2014/08/27(水) 23:21:58.97 ID:???.net (-27,-30,-186)
<p id="d1">あああ</p>


$(function(){
var nm=$("#"+"d1").text();
alert(" nm="+nm);//あああ
alert(" nm="+document.getElementById("d1").value);//undefined
});

document.getElementById("d1").valueでは値が取得出来ませんでした。
「あああ」をjQueryのtextメソッドやhtmlメソッドを使わずに取得
する方法ってあるのでしょうか?教えてください。
960 : Name_Not - 2014/08/28(木) 00:36:59.94 ID:???.net (+21,+29,-36)
>>958
エスパーだが、その質問の先に実際にやりたいことの答えはないと思う。
.valueとtext()に直接的な関連性がない以上、その頓珍漢な質問は無意味じゃないかな?
962 : Name_Not - 2014/08/28(木) 01:05:02.78 ID:???.net (-28,-30,-54)
>>960
ありがとうございます。調べてみます。
>>960
<p id="d1">あああ</p>
をjQueryではhtmlメソッドやtextメソッドであああを取得しますが、
ライブラリなしでやる方法が知りたかったです。
963 : Name_Not - 2014/08/28(木) 05:19:32.24 ID:???.net (-27,-25,-17)
だからjQueryのソースコード読めと
964 : Name_Not - 2014/08/28(木) 08:52:54.49 ID:???.net (-21,-30,-151)
ふと思ったのですが、
インスタンスはプロトタイプの属性に
this.hoge
でアクセスできますよね?
プロトタイプにmogeというプロパティがあったとして、
インスタンスの中から
this.mogeに値を代入したら、
プロトタイプのmogeへの代入になるのですか?
それともインスタンスのmogeへの代入になるのですか?
965 : Name_Not - 2014/08/28(木) 09:01:51.29 ID:???.net (-27,-30,-167)
function Hoge(){
}
Hoge.prototype = {
moge: 100
};

var a = new Hoge();
console.log(a.moge); //100
a.moge = 200;
console.log(a.moge); // 200
console.log(Hoge.prototype.moge); //100

thisへの書き込みはインスタンスプロパティへの書き込みになる
読み込みはインスタンスプロパティがない時のみプロトタイプからの読み込みになる
って感じですかね
967 : Name_Not - 2014/08/28(木) 12:45:14.14 ID:???.net (+25,+29,-21)
>>964-964
何を参考にしたのか知らんが、基本的な知識だからプロトタイプチェーンでぐぐれ
968 : Name_Not - 2014/08/28(木) 15:17:15.18 ID:???.net (-21,-30,-181)
function Hoge(){
}
Hoge.prototype = {
moge: { hage: 100 }
};

var a = new Hoge();
console.log(a.moge.hage); //100
a.moge.hage = 200;
console.log(a.moge.hage); // 200
console.log(Hoge.prototype.moge.hage); //200
969 : Name_Not - 2014/08/28(木) 19:08:41.92 ID:???.net (+25,+29,-47)
>>968
オブジェクトを介するとそういうことが起きるんですね
理由は分かりますがうっかりするとハマりそう
読む場合も書く場合も明示的にプロトタイプのフルパスを使ってアクセスする方が
安全そうです
970 : Name_Not - 2014/08/28(木) 20:32:41.13 ID:???.net (+10,+12,-31)
JSで独自に時刻表データを取り出して、HTML5で表示させたいのですが、時刻表データはどうすれば取り出せますか?
971 : Name_Not - 2014/08/28(木) 21:03:37.43 ID:???.net (+18,+30,+0)
972 : Name_Not - 2014/08/28(木) 22:58:37.88 ID:???.net (+25,+27,-20)
文字数が任意のインライン要素の
親要素に規定されない横幅を知りたい時はどうすればいいですか?
973 : Name_Not - 2014/08/28(木) 23:33:38.10 ID:???.net (+27,+29,-4)
どっかの見えない領域にコピーすればいいよ
974 : Name_Not - 2014/08/28(木) 23:45:06.26 ID:???.net (+25,+29,-19)
その見えないブロック要素領域も幅を持っているので、
どこかで折られてしまうのでは?
幅が無限の領域を作れればいいのですが・・
975 : Name_Not - 2014/08/29(金) 00:13:02.14 ID:???.net (-26,-27,-4)
>>974
documentに挿入しなければいいのでは?
978 : Name_Not - 2014/08/29(金) 10:44:55.24 ID:???.net (+13,+25,+0)
はい
982 : Name_Not - 2014/08/29(金) 11:35:07.29 ID:???.net (+24,+26,-72)
ループ中で正規表現を使う時は先に正規表現オブジェクトを作っておいた方がいいのでしょうか?
最適化されるような気もしますが
984 : Name_Not - 2014/08/29(金) 12:04:49.72 ID:???.net (-26,-30,-41)
>>981
> 駄目な場合とはどんな場合ですか?
documentのwidthよりも大きいときじゃね?しらんけど。

> position:absoluteもやってみましたが、何か変な感じになったんですよね
display:blockとか色々指定しないとだめだよ。しんらんけど。
985 : Name_Not - 2014/08/29(金) 12:40:23.81 ID:???.net (+29,+29,-85)
>>984
ちょっと何言ってるか分かりませんね
要素はdocumentに限らない、
というよりdocument直下の場合の方が少ないので、
documentのサイズは関係ありませんよ
一時的にブロック要素にしたところで、
実際には「ブロック要素の中にテキストノードが入ったもの」になってしまうので、
何かを変えたことにはなりません。
988 : Name_Not - 2014/08/29(金) 13:01:56.56 ID:???.net (-14,-3,+1)
>>986
No
989 : Name_Not - 2014/08/29(金) 20:02:54.48 ID:???.net (+27,+29,-24)
イベント関係をjqueryを使わずにしてる人いますか?
ブラウザ差違が大きい部分なので大変ですよね?
990 : Name_Not - 2014/08/29(金) 20:33:36.06 ID:???.net (+27,+29,-22)
jQuery使わずに書いているが、それ程難しいとは感じないな
慣れの問題
991 : Name_Not - 2014/08/29(金) 21:26:18.82 ID:???.net (+35,+29,-7)
差違を吸収する関数を自分で作ってしまえば良い
992 : Name_Not - 2014/08/29(金) 21:34:46.44 ID:???.net (+38,+29,-105)
良く使うイベント関係の処理で大変だと感じるようなら標準APIで書くのは夢のまた夢という気がする
ブラウザ差異なんて書いてれば自然に覚える
自分の力量を信じられないなら、ライブラリに依存するしかないんじゃないか
993 : Name_Not - 2014/08/29(金) 22:48:06.20 ID:???.net (+44,+30,-183)
>>991
書く時が問題ではなくて読む時が問題。

jQueryを使わないとどうしても冗長な部分がでてくる。
特にループとか条件分岐とか。
冗長なコードは、それだけ読まないといけない。

>>991
> 差違を吸収する関数を自分で作ってしまえば良い

コードを読まなくていいようにするためには、関数を覚えることに転嫁すること
記憶してしまえばその関数の中身は読まなくて良くなる。

その時jQueryの関数は、広く使われ他人でも知っている可能性が極めて高いから
覚えることに値する情報だが、自分で作った関数は、自分以外使われてない、
他人は知らない、何かあったら中身を見る必要がある、、という点で覚える価値の低い情報
994 : Name_Not - 2014/08/29(金) 22:52:46.77 ID:???.net (+36,+30,-107)
>>992
> 自分の力量を信じられないなら

これは力量の問題ではない。

俺は力があるから、どんなに長くてもすぐに読めるんだ!
俺は記憶力がいいから、どんなものでも一回でも記憶できるんだ!

これは単なる体力系馬鹿と同じ。何も自慢になっていない。

力がある人でも、短いコードのほうがもっとすぐに読めるし、
記憶力がいい人でも、記憶する量は少ない方がいいに決まってる。

コードは短くし、覚えるものは価値が高い物少数に絞るべきだ。
995 : Name_Not - 2014/08/29(金) 23:46:41.01 ID:???.net (+26,+23,-44)
出来るか出来ないかで言えばできるけど
コストが割に合うのかって話なんですが?
jqueryにはmouseenterやmouseleaveというメタイベントがあるんですが
それも出来てるんですか?
はい論破
996 : Name_Not - 2014/08/29(金) 23:53:58.26 ID:???.net (+38,+30,-54)
>>993-993
質問に答えただけでなぜ全否定されなきゃならんのだ?
あんたは大変だと思うが、俺は大変だと思わない
それだけの話

それと、初めから自分で結論を持っているなら質問するな
質問に見せかけた布教行為だと思われても仕方ないぞ
997 : Name_Not - 2014/08/29(金) 23:58:30.54 ID:???.net (+27,+29,-4)
そんなこと言ってる暇があるなら早く次スレ立てて下さい
998 : Name_Not - 2014/08/30(土) 00:02:28.66 ID:???.net (+27,+29,-60)
> jQueryを使わないとどうしても冗長な部分がでてくる。
これも慣れの問題
文字数が多少長かろうが綺麗なコードは読むのに苦労しない
999 : Name_Not - 2014/08/30(土) 00:04:34.28 ID:???.net (+27,+29,-17)
次スレ立てられないんですか?
はい論破
1000 : Name_Not - 2014/08/30(土) 00:07:01.90 ID:???.net (+27,+29,-6)
自分で立てるという発想がない人は言うことが違うね
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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