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

    私的良スレ書庫

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

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

    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
    451 : Name_Not - 2013/09/28(土) 18:35:11.97 ID:??? (+57,+29,-5)
    即時関数の中に全部いれるパターンだとどうなるんだろ
    452 : Name_Not - 2013/09/28(土) 18:39:28.68 ID:??? (+47,+19,-16)
    さっぱりよくわかりません
    サンプルコードをください
    453 : Name_Not - 2013/09/28(土) 18:46:09.27 ID:??? (+68,+26,-21)
    ブラウザのように戻ると進むの機能を実装します
    A→B→C→D
    と移動したあと
    戻るボタンを二回押し、
    A→B
    に戻ったあと、
    A→B→E
    と別ルートに行ったとすると、最初のC→Dルートには、戻る・進むボタンでは行けなくなるのでしょうか?
    454 : Name_Not - 2013/09/28(土) 19:03:41.30 ID:??? (+32,-29,-8)
    A→B→C→D→C→B→E
    履歴を記録しといて、履歴からたどれば
    455 : Name_Not - 2013/09/28(土) 19:04:39.80 ID:??? (+52,-20,-32)
    >>453
    ブラウザではどうなりますか?

    ブラウザのように実装するのでしょう?
    456 : Name_Not - 2013/09/28(土) 19:25:22.83 ID:??? (+64,+29,-42)
    >>454
    そういう正味の履歴も、ないと不便なので付けてあります
    >>455
    chromeでは消えるみたいです
    ただブラウザによってはどうも違うみたいで、実装が謎なんですよね
    457 : Name_Not - 2013/09/28(土) 19:39:57.55 ID:??? (+62,+29,-85)
    実装が謎な理由が今分かりました
    google検索では、A→B→A→Cと行っても、「戻る」からBが消えない
    検索エンジンではそういう動作の方が便利なので、これはどうも履歴を操作してそうしているようです
    wikipediaで移動してもそういう動きにはならない
    つまりgoogle検索で試していたから良く分からない挙動になっていたようです
    458 : Name_Not - 2013/09/28(土) 20:17:01.15 ID:??? (+23,+5,-2)
    B消えるだろ
    459 : Name_Not - 2013/09/28(土) 20:40:33.54 ID:??? (+52,+29,-27)
    解決したんだからぶり返すな
    460 : Name_Not - 2013/09/28(土) 21:17:17.06 ID:??? (+3,-30,-114)
    $(document)をキャッシュして使用していました
    scrollハンドラの動作がおかしいので調べたところ、
    キャッシュした$documentにスクロールハンドラを付けた時には一度しか動作せず
    関数内で$documentを作り直した時には動作するようです
    しかし$(document)は、作り直そうがキャッシュしようが同じものではないのでしょうか?
    scrollハンドラ以外で問題出ていないのも謎です
    こんな問題に当たった人いますか?
    461 : Name_Not - 2013/09/28(土) 21:29:57.64 ID:??? (+64,+29,-11)
    キャッシュの問題ではなく、他のイベント内でスクロールハンドラを付け外ししてるので、
    その時に外しちゃってるみたいです
    失礼しました
    462 : Name_Not - 2013/09/28(土) 22:23:58.75 ID:??? (+3,-29,-91)
    chromeデバッガでconsole.dirしたオブジェクトを
    その後変更すると、console上のdir出力も書き換わってしまい
    出力された時点のオブジェクトではなくなってしまうのですが
    これを解決する方法ありますか?
    463 : Name_Not - 2013/09/28(土) 22:46:00.72 ID:??? (+11,-30,-74)
    >>461
    この件ですが、
    $(document).off('scroll', 存在しない関数)
    となっていたため、第二引数がundefinedになり
    その結果documentにbindされた全てのscrollイベントがリムーブされていたのが原因でした
    464 : Name_Not - 2013/09/28(土) 23:12:15.96 ID:??? (-2,-30,-38)
    /* jshint devel:false */

    console.log(1);

    これでエラーにならないのはなぜですか?
    465 : Name_Not - 2013/09/29(日) 02:04:26.07 ID:??? (+37,+14,+0)
    エラーになる理由がない
    466 : Name_Not - 2013/09/29(日) 13:49:26.73 ID:??? (-1,-29,-54)
    jshintの設定でdevelをfalseしたらalertやconsole系で警告がでるはずなんですよ
    467 : Name_Not - 2013/09/29(日) 14:21:46.05 ID:??? (-1,-29,-44)
    /* jshint devel: false */
    で警告出たよ
    http://stackoverflow.com/questions/14513398/jshint-not-recognizing-devel
    この人はeの後ろにスペースを空けてなかったらしい
    表記が微妙に間違ってるのでは
    468 : Name_Not - 2013/09/29(日) 14:47:18.78 ID:??? (+57,+29,-48)
    ドットインストールいいね
    独学だと基礎的なところをぽろぽろ落としてたりするから助かる
    469 : Name_Not - 2013/09/29(日) 15:15:37.83 ID:??? (-1,-29,-10)
    でないでないでないでない
    表記は464で書いた通りなのにでないでないでない
    jshint v2.1.11
    470 : Name_Not - 2013/09/29(日) 15:19:20.18 ID:??? (-1,-29,-15)
    Environmentsの設定だけなぜか効かない
    471 : Name_Not - 2013/09/29(日) 15:25:07.74 ID:??? (-1,-29,+0)
    ちあんみにnpmからいれたjshint
    472 : Name_Not - 2013/09/29(日) 15:27:53.58 ID:??? (+16,-6,-3)
    npmから入れたら古いだろう?
    473 : Name_Not - 2013/09/29(日) 16:07:16.42 ID:??? (-1,-29,-3)
    npm空入れても公式の最新2.1.11です
    474 : Name_Not - 2013/09/29(日) 21:06:01.77 ID:??? (-3,-26,-3)
    OSから再インストールせよ
    475 : Name_Not - 2013/09/30(月) 01:44:36.27 ID:??? (-1,-29,-6)
    sublimeのJSHintを使ったらいい
    476 : Name_Not - 2013/09/30(月) 02:04:21.86 ID:??? (+42,-29,-44)
    数値を最小値と最大値の間におさめるなど
    数値関係のユーティリティライブラリありませんか?
    underscore.numberというのがあったのですが、上記のような関数はないようです
    477 : Name_Not - 2013/09/30(月) 02:15:42.19 ID:??? (+34,-29,-19)
    >>476
    飽和演算とかsaturationでググると吉かも。
    478 : Name_Not - 2013/09/30(月) 05:01:24.56 ID:??? (+3,-29,-39)
    1つのページでPOSTとGETをするフォームがあるのですが、
    そこをXMLHttpRequestで非同期で処理しています。
    XMLHttpRequestは2つインスタンスを作成するべきでしょうか?
    それとも1つを使い回ししていいのでしょうか?
    479 : Name_Not - 2013/09/30(月) 05:58:19.36 ID:??? (+63,+29,-58)
    >>476
    作るは簡単なんだけど、適切な関数名が
    思いつかないんだよね。

    >>477
    軽く飽和演算で検索してみたけど、
    演算した時に飽和する話が多かった。
    480 : Name_Not - 2013/09/30(月) 06:03:14.92 ID:??? (+42,-30,-90)
    >>476
    > underscore.numberというのがあったのですが、上記のような関数はないようです
    おい、あるじゃねーかw

    http://github.com/hanamura/underscore.number
    pinch _.num.pinch(num, min, max)

    Puts num in a range of min to max.

    Returns min if num is smaller than min, max if num is larger than max, and num itself if it’s already in a range of min to max.

    _.num.pinch(12, 0, 10); // 10
    _.num.pinch(5, 0, 10); // 5
    _.num.pinch(-3, 0, 10); // 0
    481 : Name_Not - 2013/09/30(月) 06:04:51.36 ID:??? (+3,-30,+0)
    (function(){
     function AAA() {
      var a = document.getElementById('a');
      var F = function() { //処理 };
      a.addEventListener('load', F, false);
      a.addEventListener('click', F, false);
     }
     window.addEventListener('load', AAA, false);
    }());


    ページロード時とaをクリックしたときにFを実行するために上のように書いてみました。
    a.addEventListener('load'~ができないのでここを
    window.addEventListener('load'~に変えたけど動きませんでした。
    色々ためしたものの拉致があかなかったので、

    (function(){
     function AAA() {
      var a = document.getElementById('a');
      //処理
      a.removeEventListener('click', AAA, false);
      a.addEventListener('click', AAA, false);
     }
     window.addEventListener('load', AAA, false);
    }());

    このようにしてみたところうまく動きました。
    これで大丈夫でしょうか?なおすところがあったらご指導お願いします。
    jQueryに頼らない書き方を覚えたいのでjQueryはなしでお願いします。
    482 : Name_Not - 2013/09/30(月) 06:21:36.82 ID:??? (+8,-29,-32)
    10x400くらいの数字が入った二次元配列をtableにして表示するのに高速な方法教えてください。
    それに最初の行の各セルに異なるclickイベントを付けたいです。
    483 : Name_Not - 2013/09/30(月) 08:43:43.21 ID:??? (+3,-30,-52)
    >>482
    よくわかんないけど
    array[tr要素10個][td要素400個]
    こういうこと?
    for'()する時毎回length取得するんじゃなくてfor(vari,len=array[tr要素1].length; i<len; i++)
    ってやるぐらいしか
    484 : Name_Not - 2013/09/30(月) 08:51:37.86 ID:??? (+111,+29,-89)
    質問ですが、
    GoogleってJavaScriptコードを外部ファイルではなくHTML内に記述していますよね?(cssもそうですが)
    これって何か理由があるのでしょうか?
    JSファイルは外部ファイルにすべきと聞いてそうしていたのでとても気になります。
    外部ファイルにした方がブラウザのキャッシュを利用して読み込みを軽減してトラフィックとかも減りますよね?

    もし理由がわかる方いらっしゃれば教えてください。
    485 : Name_Not - 2013/09/30(月) 11:52:12.15 ID:VtFspj3d (+31,+26,-15)
    >>484
    リクエストが減るからじゃね?
    486 : Name_Not - 2013/09/30(月) 14:21:57.81 ID:??? (-1,-29,-45)
    jQueryでスクロール座標を得る時に、今まで$(document).scrollTop()等を使っていたのですが
    http://stackoverflow.com/questions/10324753/jquery-function-to-get-the-curren-viewport
    ここでは$(window)を使っていました
    どちらが妥当ですか?
    487 : Name_Not - 2013/09/30(月) 15:11:09.30 ID:??? (-5,-28,-3)
    http://jsperf.com/getscrollvalues-jquery

    傾向的にwindowが速いようです
    488 : Name_Not - 2013/09/30(月) 15:34:52.08 ID:??? (+71,+28,-3)
    >>484
    逆にキャッシュに残らないようにしてるんじゃね?
    489 : Name_Not - 2013/09/30(月) 15:57:45.20 ID:??? (+63,+29,-2)
    >>480
    あれ本当ですね
    早とちりでした
    ありがとうございました
    490 : Name_Not - 2013/09/30(月) 17:39:02.47 ID:??? (+29,+1,-3)
    関数の実行時間を測る簡単な方法を教えてください
    491 : Name_Not - 2013/09/30(月) 18:06:43.10 ID:VtFspj3d (-27,-29,-12)
    console.time()
    492 : Name_Not - 2013/09/30(月) 18:16:23.38 ID:??? (-6,-29,+0)
    performance.now()
    493 : Name_Not - 2013/09/30(月) 19:49:33.00 ID:??? (+0,-30,-34)
    >>482
    2次元でなく単次元のTypedArrayを使う
    どうしても2次元が良ければBinaryDataのArrayTypeを使う(ES6)
    494 : Name_Not - 2013/09/30(月) 20:12:07.84 ID:??? (+2,-16,-1)
    >>491
    エラーになりましたが?
    495 : Name_Not - 2013/09/30(月) 20:47:54.42 ID:??? (+3,-30,-122)
    hogeという変数?オブジェクト?とdocument.getElementById('hoge')が連動するのは仕様なのでしょうか?
    var hoge = document.getElementById('hoge');
    alert(hoge.value);
    という感じで今までやってたのですが、ふとしたことからいちいち定義しないでも、
    alert(hoge.value);でいけることに気づきました。
    496 : Name_Not - 2013/09/30(月) 21:28:10.99 ID:??? (+40,-11,-1)
    仕様
    497 : Name_Not - 2013/09/30(月) 21:28:43.97 ID:??? (+36,-30,-94)
    operaなんだが、

    var obj = { "items": [] },
       val1 = "---",
       val2 = "===";

    obj.items.push ( {"p1":val1, "p2":val2 } );

    として、

    var str = JSON.stringify (obj);

    とすると、

     {"items": [ {"p1":"---", "p1":"==="} ] }

    にならずに、

     {"items": "[{\"p1\":\"---\",\"p2\":\"===\"}]" }

    となるのは仕様?
    498 : Name_Not - 2013/09/30(月) 21:56:50.66 ID:??? (+45,+27,+0)
    気のせい
    499 : Name_Not - 2013/09/30(月) 23:10:32.69 ID:??? (+62,+29,-26)
    >>496
    どこの仕様書に載ってるんですか。
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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