のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,641,844人
昨日: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
901 : Name_Not - 2014/08/24(日) 06:09:07.51 ID:???.net (+32,+29,-3)
>>899
今のコードはさすがに洗練されてますね
902 : Name_Not - 2014/08/24(日) 07:00:16.81 ID:???.net (-26,-29,-116)
よく見たら、jqueryも
$.css(dom, property)
のように、インスタンスを作らずに関数を実行できますね?
もしかしてこの方式で
jqueryでもインスタンスを作らずdomエレメントに対して色々できるのでは?
それならdomdashを作らなくてもいいのですが
904 : Name_Not - 2014/08/24(日) 07:13:25.38 ID:???.net (+27,+29,-37)
皆様のおかげで「インスタンスを作らずにjqueryを使う」という新しい方向性が発生しました\(^o^)/
開発コストは一番低いので期待が高まります
907 : 875 - 2014/08/24(日) 17:59:25.45 ID:???.net (+10,+17,+1)
>>906
試してみます
ありがとうございます。
909 : Name_Not - 2014/08/24(日) 19:35:45.12 ID:???.net (+21,+28,-17)
ダメ
演算子の優先順位でダメ
910 : Name_Not - 2014/08/24(日) 19:40:09.87 ID:???.net (+13,+25,+0)
了解です
911 : Name_Not - 2014/08/25(月) 02:09:40.72 ID:???.net (-28,-30,-111)
>>908
上は「0<変数」が判定されて、「true<5」か「false<5」になって
trueが1、falseが0に変換されてtrueになる
下は「&」より「<」が優先順位高いので文法上は間違っていないが
if文内では「boolean→number→boolean」の変換になるからお勧めできない
914 : Name_Not - 2014/08/25(月) 09:26:23.70 ID:???.net (-26,-29,-88)
オブジェクトのキーに文字列以外を与えた場合でも
エラーにならないようです
普通のオブジェクト以外に、DOMエレメントやundefinedやnullやwindowでも
エラーにはなりませんでした
何を与えてもエラーにならないと考えて良いのでしょうか?
918 : Name_Not - 2014/08/25(月) 18:10:27.31 ID:???.net (+33,+29,-18)
どういう意味?
プラグイン作成とか普通でしょ
919 : Name_Not - 2014/08/25(月) 18:40:58.31 ID:???.net (+37,+29,-182)
>>918
なんでもかんでもプラグインにするのはダメ。
それは結局のところオレオレライブラリを作ってるのと変わらない。
誰も知らないlodashの亜種を作ってるのと変わらない。

lodashには十分な関数がそろっているから
新たに追加する必要はない。

まずlodashを理解して使いこなして安易にプラグインにするのではなく
既存の枠組みで処理することを考えなさい。

ほんの少し工夫すればできることばかりだから。
920 : Name_Not - 2014/08/25(月) 18:55:53.30 ID:???.net (+27,+29,-17)
意味不明
人に使わせないんだから誰も知らないのは当たり前だし何の問題もない
そんな考えはじめて聞いたよ
921 : Name_Not - 2014/08/25(月) 18:59:36.06 ID:???.net (+32,+29,-66)
ユーティリティライブラリ的な関数を作りたい
→既にlodashが入っている
→lodashの名前空間に追加したら便利

これ普通の発想だろ?
mixinはそのためにあるんだし
拡張するな派の教義が謎すぎる
922 : Name_Not - 2014/08/25(月) 19:06:05.17 ID:???.net (+32,+29,-81)
> これ普通の発想だろ?

間違った発想。
話は単純で、そうする明確な理由があるかどうか。
理由がないならやるべきじゃない。

なぜそうしたいの?
lodashではなくmynameという名前空間ではだめな理由は?

合理的な理由を答えられないのであれば、
自分が作った名前空間に入れるべき。
923 : Name_Not - 2014/08/25(月) 20:12:30.99 ID:???.net (+32,+29,-45)
合理的な理由があるからlodashにしてるんだが
なんでないと思ったのがが分からん
924 : Name_Not - 2014/08/25(月) 20:15:35.35 ID:???.net (+12,+22,+0)
>>911
なるほど!
925 : Name_Not - 2014/08/25(月) 20:25:07.73 ID:???.net (+27,+29,-20)
>>923
その合理的な理由って?
926 : Name_Not - 2014/08/25(月) 20:40:00.74 ID:???.net (-24,-22,-16)
DOMツリーから存在するidを全取得したいのですが
どうやればいいですか?
928 : Name_Not - 2014/08/26(火) 23:50:58.41 ID:???.net (+24,+26,-46)
ウインドウ座標x,yが
ある要素のオフセット座標では何に相当するか
を簡単に計算する関数ありませんか?
座標の計算って複雑で頭がこんがらがります
929 : Name_Not - 2014/08/27(水) 04:43:30.13 ID:???.net (+27,+29,-16)
最近jsbinが
第三者に見せるのに時間制限を設けたりして使いにくくなりましたが
一番いいサービスは何ですか?
930 : Name_Not - 2014/08/27(水) 06:20:43.42 ID:???.net (-21,-30,+0)
特定のリンクを削除したいのですが、例えば以下の様なhtmlの場合にa要素だけが消えて空のli要素が残るのではなく、li要素ごと削除するにはどうしたら良いでしょうか?
<li><a href="example.com">link</a></li>

また、li要素の中にa要素だけでなくspanやdivなどがあった場合にも同様にli要素ごと削除したいです
<li><span><a href="example.com">link</a></span></li>

今現在は以下のスクリプトでa要素のみを削除しています

var link_list = new Array("example.com","example.net");

function evalXpath(xpath){
return document.evaluate(
xpath,document,null,XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
null );
}
function removelinks(){
console.log(document.links.length);
for(var i=0;i<link_list.length;i++){
var xpath = "//a[contains(@href,\"";
xpath += link_list[i];
xpath += "\")]";
var nodes = evalXpath(xpath);
console.log(xpath+":"+nodes.snapshotLength);
for( j=0;j<nodes.snapshotLength;j++){
var links = nodes.snapshotItem(j);
links.parentNode.removeChild(links);
}
}
}
(function () {
window.onload=removelinks;
})();
931 : Name_Not - 2014/08/27(水) 07:49:29.07 ID:???.net (-28,-30,-26)
$('li a').remove();
932 : Name_Not - 2014/08/27(水) 10:21:26.37 ID:???.net (+32,+29,-114)
JSでキーボード操作はやっぱ出来ないんすかね?
OSに付いてる日本語変換が使えるフリック入力のソフトウェアキーボードを作る必要があって、divボックス内にアルファベットを打ち込むまでは出来たんですが、日本語ローマ字&漢字変換がどうしても出来ないんすよ。
要は、divの中に任意の文字列を追加したり削除したり、改行したりとか、そういった擬似的な文字入力ではなくて、イベントの発火によってキーボード上のキーを直接入力したいんです。
ブラウザでは危険だから出来ないようになってるんすかね?
933 : Name_Not - 2014/08/27(水) 13:57:51.36 ID:???.net (+28,+29,-69)
>>930を見て思うのは
素人にDOMは使わせるべきじゃないなってこと。
このコードがIEで動かないこともわかってないんだろうな。

すなおにjQuery使いなよ。
934 : Name_Not - 2014/08/27(水) 15:18:27.78 ID:???.net (+12,+4,-55)
HTML5のプレースホルダを擬似的に再現します
input要素のvalueによってプレースホルダの表示の有無を決めるとすると
IME未確定状態でプレースホルダが消えません
未確定だがIMEには入力されていることを検出するにはどうやればいいですか?
935 : Name_Not - 2014/08/27(水) 15:33:41.60 ID:???.net (+29,+29,-70)
>>931
jQueryではそのような記述で済むのですね。
ありがとうございます。

>>933
仰るとおり素人で、元となるコードとリファレンスを見ながらという感じです。
jQueryの方で調べてみようと思います。
ありがとうございました。
936 : Name_Not - 2014/08/27(水) 16:08:26.36 ID:???.net (-27,-30,-51)
>>935
li aは「liを子孫に持つa」なので
$('li:has(a)').remove();
でした
すみません
937 : Name_Not - 2014/08/27(水) 17:17:49.41 ID:???.net (-13,-15,-32)
このスレの異常なまでのjQuery推しが気持ち悪い

>>935
> li aは「liを子孫に持つa」なので
「liの子孫であるa」だと思うけど
938 : Name_Not - 2014/08/27(水) 17:22:46.50 ID:???.net (+27,+29,-74)
×子孫
○先祖
でした
単純に長いコードが思いっきり短くなるなら使った方がいいんじゃね?ってことで
別にjquery推しじゃないですよ
一方では脱jqueryを進めてますし
939 : Name_Not - 2014/08/27(水) 17:28:38.53 ID:???.net (+32,+29,-75)
jqueryの特徴として、
複雑な処理は短く書けるが
単純な処理はコストが高くなりすぎる、があげられると思います
なので、複雑な処理は積極的に使い
単純な処理は使わずに済むなら使わない、
という方向性がいいと思います
940 : Name_Not - 2014/08/27(水) 17:56:02.29 ID:???.net (+29,+29,-33)
>>934
未確定状態でIMEが消えないのは
親指シフトソフトのやまぶきを使っているからでした
とはいえ、そういう時にも消えるように作るべきだと思いますが・・
941 : Name_Not - 2014/08/27(水) 17:57:37.45 ID:???.net (+32,+29,-47)
【悪用禁止】
「ブログを作っても見に来てくれる人がいない」
と困っているヤツに朗報♪
このツール使えば初日で600PV、3日で2000PVは普通にいく
リピーターを作るにはブログのコンテンツを充実させるしかないけど
初回アクセスはマジで大量に稼げるぞ

http://ch2auto.blog.fc2.com/blog-category-1.html
942 : Name_Not - 2014/08/27(水) 18:43:46.64 ID:???.net (+33,+29,-55)
jqueryのトラバース処理は生JSと比べるとパフォーマンスどうなんだろ?
生JSで書いた方がパフォーマンスは上がるかも
943 : Name_Not - 2014/08/27(水) 19:59:48.42 ID:???.net (+32,+29,-121)
たとえばボタンを押してその結果が反映されるまで
何秒以内に終わるこという目安を作る。

たぶん0.1秒以内であればユーザーは処理に
時間がかかっているとは思わないだろう。
そしてユーザーは0.1秒でも0.001秒でもその差に気がつかない。

パフォーマンスのことを考えるときはjQueryを使った時と
使わない時で何倍差がある?ではなくて許容範囲時間に収まるか?
で考えたほうがいいよ。もちろんjQueryに限らないけど。
944 : Name_Not - 2014/08/27(水) 20:04:46.27 ID:???.net (+37,+29,-80)
>>942
生JSで書いたほうがパフォーマンスは上がる。
それは当たり前だし、やらずともわかってる。

だからパフォーマンス上で必要になれば生JSで書く。
正確に言えば、遅い部分だけを生JSで書いて
jQueryと混ぜて使うだろう。
945 : Name_Not - 2014/08/27(水) 20:36:36.69 ID:???.net (+24,+29,-16)
じゃあ
全IDを抜き出す
を生JSで書いて下さい
946 : Name_Not - 2014/08/27(水) 20:50:29.69 ID:???.net (+16,+12,-19)
javascriptしか知らないんだがjQueryって難しい?
947 : Name_Not - 2014/08/27(水) 20:57:16.01 ID:???.net (+39,+29,-44)
>>946
簡単。CSS知っていればもっと楽。

考え方としてはセレクタに一致する
複数のDOM要素に対して、一括して処理できる感じ。

だから生JSでループして条件に当てはまるものに処理するような
コードは大幅にコードが減る。
948 : Name_Not - 2014/08/27(水) 21:02:42.52 ID:???.net (-28,-29,-3)
>>945の件ですが
querySelectorAll('[id]')
で出来ました
949 : Name_Not - 2014/08/27(水) 21:11:31.81 ID:???.net (-29,-29,-40)
jqueryのクエリー的部分はもはやほとんどqueryselectorで出来るので
後はpoyfull的部分とanimateのような動的部分が残る感じですかね
イベント周辺は生で書きたくない感じがします
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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