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

私的良スレ書庫

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

元スレJavaScript ライブラリ総合質問所 vol.4

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
851 : Name_Not - 2015/02/26(木) 18:19:27.10 ID:???.net (+47,+29,-1)
そりゃそうだろ
852 : Name_Not - 2015/02/26(木) 18:25:27.55 ID:???.net (+58,+30,-80)
それは語弊がないか?
jQueryはDOMの全てをカバーしてるわけじゃない
例えばテキストノード操作に関してはかなり貧弱
853 : Name_Not - 2015/02/26(木) 19:20:15.56 ID:???.net (+35,+7,-18)
テキストノードの操作って何が必要なんだ?
854 : Name_Not - 2015/02/26(木) 23:23:39.97 ID:???.net (-1,-29,-29)
jQueryにはtextContentしかないからなあ
855 : Name_Not - 2015/02/26(木) 23:30:39.39 ID:???.net (+56,+28,-23)
だから他に何が必要なんだ?
DOMにある機能で。
856 : Name_Not - 2015/02/26(木) 23:36:11.16 ID:???.net (+2,-29,-30)
dataプロパティとか、テキストノードをreplaceChildとか
857 : Name_Not - 2015/02/26(木) 23:37:09.18 ID:???.net (+7,-20,-40)
そもそも、jQueryではテキストノードを選択できないな
858 : Name_Not - 2015/02/27(金) 11:34:29.65 ID:???.net (+53,-29,-207)
テキストノードは、idもclassも付けられないんだから
選択しようがないと思うが。
DOMでも選択はできないよね?

DOMでできることはchildNodesで列挙して行くことなわけで、
それと同じことならjQueryではcontents()で可能

DOMで選択はできないが、childNodesで列挙することはできる。
それをjQueryではcontents()で出来る。

だから「DOMでできることはjQueryでもできる」は間違いじゃないよ。
859 : Name_Not - 2015/02/27(金) 12:07:04.21 ID:???.net (+57,+29,-26)
jQueryが便利すぎて別言語に思うこともあるけど、ただのライブラリなんだよな
860 : Name_Not - 2015/02/27(金) 12:58:57.21 ID:???.net (+4,-30,-65)
>>858
> DOMでも選択はできないよね?
DOM ならテキストノードを参照できる
XPath の text() を使ってもいいし、要素ノードから firstChild や childNodes を辿ってもいい
861 : Name_Not - 2015/02/27(金) 13:13:52.19 ID:???.net (+0,-29,-35)
>>858
> それをjQueryではcontents()で出来る。
で、>>856をどうやって実現する?
862 : Name_Not - 2015/02/27(金) 13:29:18.50 ID:???.net (+30,-30,-76)
例えば、こういうコードは jQuery だけでは書けない
http://jsfiddle.net/eh65ytw3/
Text#data や TEXT_NODE の replaceChild に成り代わるものが jQuery API には存在しない
863 : Name_Not - 2015/02/27(金) 13:44:45.93 ID:???.net (+59,+27,-43)
>>862
jQuery を使うならこうかな
http://jsfiddle.net/eh65ytw3/1/
DOM API を使わないと書けそうにないね
864 : Name_Not - 2015/02/27(金) 14:04:39.48 ID:???.net (+3,-30,-75)
jQuery の場合、要素ノード操作に特化しすぎてる感があるな
Node#firstChild, Node#lastChild, Node#nextSibling, Node#preventSibling 等の足りないAPIが多すぎる
865 : Name_Not - 2015/02/27(金) 14:23:23.82 ID:???.net (+62,+29,-166)
まあDOM APIを使ったとしてもテキストノードは扱いづらいからな
<span>で囲めばいいだけの話だし、jQueryがテキストノード操作を捨てるのは妥当だと思うよ

「DOMでできることは jqueryでもできる」とは言えないだろうが、それは当たり前。
よく使う操作を楽にするのがライブラリの本領だから。
866 : Name_Not - 2015/02/27(金) 16:29:47.02 ID:???.net (+44,-20,-61)
(1.2より前)はxpathのセレクタもサポートしていたみたいだけどね

でもテキストノードを選択出来たとしても、jQueryのメソッドが
要素と同じように適用できるとは思えないけれど
867 : Name_Not - 2015/02/27(金) 16:49:40.68 ID:???.net (+57,+29,-98)
結局、jQueryではテキストノード操作は出来ないのか
テキストノードが選択できないといったり、テキストノード操作が出来るといったり、彼の主張は前言撤回が多すぎて説得力ゼロだな
868 : Name_Not - 2015/02/27(金) 16:55:59.78 ID:???.net (+68,+29,-86)
>>866
> でもテキストノードを選択出来たとしても、jQueryのメソッドが
> 要素と同じように適用できるとは思えないけれど

当たり前じゃね? テキストノードっていうのは
要素じゃないんだから、それはそもそもDOMの問題だ。
869 : Name_Not - 2015/02/27(金) 16:57:23.82 ID:???.net (+57,+29,-19)
DOM要素単位で扱うものなんだから
ノード操作が出来ないのは当たり前だろ
870 : Name_Not - 2015/02/27(金) 17:12:22.15 ID:???.net (+2,-29,-15)
.text() で値は取れるな (.nodeValue が返される模様)
セットはできないけど
871 : Name_Not - 2015/02/27(金) 17:15:11.81 ID:???.net (-1,-29,-25)
>>870
text() は引数を与えればセットも出来るが、これはtextContentであってテキストノードを参照しているわけではない
http://api.jquery.com/text/
872 : Name_Not - 2015/02/27(金) 17:17:53.75 ID:???.net (+91,+29,-8)
JavaScriptでマシン語が使えないの?って言ってるようなものだろ
873 : Name_Not - 2015/02/27(金) 17:25:48.33 ID:???.net (+9,-30,-134)
jQueryのソース見ると、こんな感じでnodeTypeみて処理しているから、
何かしらの意味があってやってるんじゃないかな。

text: function( value ) {
return access( this, function( value ) {
return value === undefined ?
jQuery.text( this ) :
this.empty().each(function() {
if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) {
this.textContent = value;
}
});
}, null, value, arguments.length );
},
874 : Name_Not - 2015/02/27(金) 17:29:20.41 ID:???.net (+70,+29,-50)
>>872
プリコンパイルされたライブラリとか欲しいね
まあプラグイン経由とかだったり署名付けたりとか色々と面倒そうだけど
875 : Name_Not - 2015/02/27(金) 17:29:42.81 ID:???.net (+90,+29,-63)
DOM APIを使った事がなくてjQueryで何が出来るか知らない人が何でも出来るとほらを吹いただけか
876 : Name_Not - 2015/02/27(金) 17:31:12.64 ID:???.net (+101,+27,-36)
>>875
お前jQueryに親でも殺されたの?
877 : Name_Not - 2015/02/27(金) 17:35:55.16 ID:???.net (+20,-30,-85)
>>873
それの jQUery.text(this) の所が取得側なんだけど
jQuery.text = Sizzle.getText;
ってなってて Sizzle.getText;では
} else if ( nodeType === 3 || nodeType === 4 ) {
return elem.nodeValue;
}
こういう部分があるね
これでテキストノードでも値が取れる
878 : Name_Not - 2015/02/27(金) 17:39:04.14 ID:???.net (+105,+29,-20)
>>876
JavaScriptスレでも暴れていたし、jQuery信者をうざいと思ってる人は相当数いるんじゃない?
879 : Name_Not - 2015/02/27(金) 17:44:32.42 ID:???.net (+4,-29,-65)
>>877
それはSizzleだから対応しているって感じでいいのかな?
Sizzleだと取得しか必要ない気がするし。

SizzleのCSS4対応ってどうなるんだろうか。
一応するみたいだが、そもそもCSS4がまだ使用が固まってないんだっけ?
http://github.com/jquery/sizzle/issues/237

CSS4でもテキストノードを選択する方法はないのかな?
880 : Name_Not - 2015/02/27(金) 17:45:07.63 ID:???.net (+106,+29,-22)
>>878
俺の知る限り、一人が過剰に拒否しているだけに見えるね。
881 : Name_Not - 2015/02/27(金) 17:48:04.33 ID:???.net (+3,-30,-81)
CSS: Selecting text nodes (as with XPath’s text())
http://www.opinionatedprogrammer.com/2011/01/css-selecting-text-nodes-as-with-xpath-text/
> There used to be a :contains() pseudo-class for this in a CSS 3 draft, but it’s gone.

ほー、どうやらCSS3の仕様として:contentsというのがあったらしい。
けど無くなったと。だれか経緯しらない?
882 : 877 - 2015/02/27(金) 17:51:27.26 ID:???.net (+52,+29,-3)
あ、なんか勘違いか。
883 : Name_Not - 2015/02/27(金) 18:04:27.31 ID:???.net (+72,+29,-21)
>>880
反応するかは別として回答の質を落としてるのは間違いないな
884 : Name_Not - 2015/02/27(金) 18:06:19.46 ID:???.net (+94,+29,-23)
それはjQueryを使わない回答をする奴がいないのが悪いんだろう?
885 : Name_Not - 2015/02/27(金) 19:58:48.79 ID:???.net (+62,+29,-123)
jQueryを使った回答でもあるだけありがたいよ。
簡潔に書いた動く擬似コードだと思って
それをDOM APIに置き換えればいいだけの話だし。

一番うざいのが、jQuery信者がーとかいいだすやつ。
いつもあいつをきっかけに荒れる。
886 : Name_Not - 2015/02/27(金) 22:20:21.74 ID:???.net (+108,+30,-186)
>>884
>>858のようなjQuery方面だけに知識が偏っていて間違った回答なら無いほうがマシです
質問しても変な方向に切り返してきていちいち訂正するのが面倒くさいです
無視したら誠実さを疑われるのでスルーするわけにもいかないですし
それから、jQuery以外の回答もjQuery信者がスレに張り付いているのでjQueryの回答だけ目立って見えるだけで普通にあります
たくさんの間違った知識で答えるjQueryの回答よりも確かな知識で回答してくれる一人の回答の方が何倍も価値があります
887 : Name_Not - 2015/02/27(金) 23:24:35.38 ID:???.net (+72,+29,-22)
>>886
つまり、間違った回答じゃなければOKだよね?
逆に間違った回答なら、DOMでもNGだよね。
888 : Name_Not - 2015/02/28(土) 00:22:33.36 ID:???.net (+55,+27,-24)
シンプルな質問
googoleメールや
twitterくらいあんとみたいな
動的なサイトなら
jqueryでバリバリ作れるってことだよね?
889 : Name_Not - 2015/02/28(土) 01:00:11.15 ID:???.net (+43,+25,+0)
はい
890 : Name_Not - 2015/02/28(土) 03:27:42.69 ID:???.net (-1,-29,-23)
http://netdna.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css

bootstrapのこのファイルが読み込み状態になったままで止まります
もっといいCDNありますか?
891 : Name_Not - 2015/02/28(土) 12:36:30.85 ID:???.net (+50,+27,-14)
一時的なものでした
893 : Name_Not - 2015/03/07(土) 19:25:32.60 ID:???.net (+36,-30,-37)
document.getElementById("content").firstChild

$('#content :first-child')
895 : Name_Not - 2015/03/07(土) 19:40:38.12 ID:???.net (+42,+20,-13)
>>894
そんなことやっても、
一回あたり0.1ミリ秒未満しか高速化出来ないけど、
その処理何回実行されるの?
896 : Name_Not - 2015/03/07(土) 20:07:43.20 ID:???.net (-2,-29,-80)
>>894
セレクターの内部の仕組みについて
http://qiita.com/setzz/items/25064020f199e35d65db

セレクターでIDを使った場合に動くgetElementByIdのパフォーマンス
http://attosoft.info/blog/getelementbyid-performance/

IDを使ってるなら、毎回セレクターで取得しても問題ないかな、
古いバージョンのIEだとキャッシュを持つのは有効だと思う
898 : Name_Not - 2015/03/07(土) 20:14:58.26 ID:???.net (+52,+29,+0)
質問を無視しないでください。
899 : Name_Not - 2015/03/07(土) 23:16:45.81 ID:???.net (+31,+13,-3)
知らんがな
900 : Name_Not - 2015/03/08(日) 18:16:56.22 ID:???.net (+57,+29,-26)
変数に入れておけば後でid変わった時に
一箇所変えるだけでよくなるというメリットがないこともないなと思ってる
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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