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

    私的良スレ書庫

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

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

    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
    601 : Name_Not - 2010/04/10(土) 22:13:13 ID:??? (+55,+29,+0)
    >>600
    さんくすです
    602 : Name_Not - 2010/04/11(日) 08:04:37 ID:??? (+3,-30,-63)
    >>> document.getElementsByTagName("div") instanceof Array
    false
    >>> document.getElementsByTagName("div") instanceof Object
    true

    へぇArrayじゃなかったのか
    603 : Name_Not - 2010/04/11(日) 10:03:40 ID:??? (-1,-29,-35)
    NodeList(またはHTML Collection)は配列みたいなオブジェクト

    後で追加した要素にも対応してくれるけど、配列より遅いだったか?
    604 : Name_Not - 2010/04/11(日) 13:08:25 ID:??? (-2,-30,-64)
    でも IE の場合、NodeList は Object のインスタンスじゃないし、
    Array.prototype.slice.call(NodeList) で配列に変換できない罠。
    605 : Name_Not - 2010/04/11(日) 17:23:43 ID:??? (+3,-30,+0)
    配列を数値に変換するときってどのような処理になるんでしょう?

    (1) alert( +[123] ); // 123
    (2) alert( +[0xFF] ); // 255
    ■サイズ1で、要素が数値の配列はその値そのものに変換されるように見える。

    (3) alert( +["0xFF"] ); // 255
    ■サイズ1で、要素が文字列ならToNumber()か何かで数値に変換される?

    (4) alert( +["010"] ); // 10
    (5) alert( +["123ABC"] ); // NaN
    ■この挙動はやっぱりToNumber()が使われているように見える

    (6) alert( +[true] ); // NaN
    ■ToNumber(true) って1のはずなのになんで?

    仕様書を見るとArrayのDefaultValueが呼ばれているように読めるのですが、
    その中身までは定義されていないようです。
    ということはブラウザ依存の謎仕様なんでしょうか、
    それとも何か読み落としてるだけでちゃんと理由があるんでしょうか。
    606 : Name_Not - 2010/04/11(日) 17:57:20 ID:??? (+31,-29,-16)
    数値に変換する前にtoStringが入ってるから
    607 : Name_Not - 2010/04/11(日) 21:58:52 ID:??? (+62,+29,-1)
    >>606
    ありがとうございます!
    もう一度読み直してきます。
    608 : Name_Not - 2010/04/12(月) 05:39:27 ID:??? (-1,-29,-71)
    createElementで作ったtype=textなInputで、内容のテキストが選択できないというか、
    マウスのクリックが全く効かないんですが、何か理由があるんでしょうか?

    609 : Name_Not - 2010/04/12(月) 05:53:55 ID:??? (+55,+27,-3)
    事故解決しました><

    挿入先がAタグに囲まれてました。
    610 : Name_Not - 2010/04/12(月) 09:16:44 ID:??? (+3,-30,-208)
    <form>
    <input type="button" value="すべて選択" onClick="select(1)">
    <input type="button" value="すべて解除" onclick="select(0)">';

    ・・・・・・・・・・・・・・・・・・・・・・・・・・・


    function select ( bool){
    var x=document.getElementsByTagName('input');
    if(x[i].type.match('checkbox')){
    if(bool){
    for(var i=0;x[i];i++)x[i].checked = true;
    }else{
    for(var i=0;x[i];i++)x[i].checked = false;
    }
    }
    }


    なぜか、
    すべて選択」が効かないです。
    エラーは出てません。

    どうチェックして要ったらいいでしょうか。

    おねがいします。
    611 : Name_Not - 2010/04/12(月) 10:03:48 ID:??? (+57,+29,-24)
    そりゃそうだろうな
    一行ずつ何をしているのか説明してみろよ
    ついでに無駄なことをしているのにも気付け
    612 : Name_Not - 2010/04/12(月) 22:17:51 ID:??? (+23,-29,-63)
    ブラウザのリサイズが終わったタイミングで動かしたい関数があるのですが、どのようにするのがいいのでしょうか?
    onResizeEndは対応しているブラウザが少ないみたいなので使いたくありません。
    onResizeを使うと、リサイズの間に何度も関数が実行されて好ましくありません。

    いい方法があれば教えてください。
    613 : Name_Not - 2010/04/12(月) 22:37:17 ID:??? (+86,+29,+0)
    リサイズなんて迷惑なことやめてくれ
    614 : Name_Not - 2010/04/12(月) 22:38:04 ID:??? (+46,-18,-31)
    フラグとsettimeout使ってonリサイズをしてからある時間リサイズされてなければ実行はどうよ。
    615 : Name_Not - 2010/04/12(月) 22:40:05 ID:??? (+54,+26,-2)
    リサイズなんてブラウザ側で無効にしてますけどね
    616 : Name_Not - 2010/04/12(月) 22:55:24 ID:??? (+68,+29,-3)
    >>613
    どういうことでしょうか?

    >>614
    ありがとうございます。そうします。
    617 : Name_Not - 2010/04/12(月) 23:01:32 ID:Gft8q3RR (+29,+29,-62)
    おまいらリサイズに脊髄反射しすぎw
    ウィンドウをリサイズするんじゃなくて、
    リサイズされたら発火したいんだろ。

    で、厳密にやろうと思ったらマウスとウィンドウの大きさ見張って、
    自分なりのイベント作るしかない、のかなあ。
    618 : Name_Not - 2010/04/12(月) 23:11:01 ID:??? (+57,+29,-7)
    というか、いまどきタブブラウザ使っていればリサイズなんてしないけどな。
    619 : Name_Not - 2010/04/12(月) 23:21:00 ID:??? (+57,+29,-8)
    横幅に合わせてアイテム数やカラム数を調整したりするサイトはたまにあるよね。
    620 : Name_Not - 2010/04/12(月) 23:22:09 ID:??? (+57,+29,-8)
    >リサイズされたら
    リサイズが終わったという文言でどうしてそういう解釈ができるのだろうか
    621 : Name_Not - 2010/04/12(月) 23:24:12 ID:??? (+57,+29,-7)
    嗚呼リサイズってブラウザ全体じゃなくて要素のリサイズのことね
    622 : Name_Not - 2010/04/12(月) 23:50:27 ID:??? (+96,+30,-94)
    「ブラウザのリサイズ中」は何もしたくないので「ブラウザのリサイズが終わったタイミング」と書きました。
    スクリプトからブラウザのリサイズを行いたいということではなく、
    閲覧者がブラウザのサイズを調節したり、最大化や「元に戻す」をしたときに
    ホームページのレイアウトを調節したかったのです。

    誤解を招くような表現で申し訳ありません。
    623 : Name_Not - 2010/04/12(月) 23:56:28 ID:??? (+50,+27,-13)
    CSSでうまくいくようにやれよ。
    624 : Name_Not - 2010/04/13(火) 10:38:50 ID:??? (+70,+29,-7)
    >>622
    最初の文章で十分に伝わったよ。
    判らない方がどうかしてる。
    625 : Name_Not - 2010/04/13(火) 17:19:21 ID:??? (+36,-30,-235)
    こういう感じ? どれくらい待ったら「リサイズが終わった」と
    判断するかは使ってみた感じで調整する必要があるかも。
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
    <html><head><title>???</title>
    <script type="text/javascript">
    var tid = 0;
    function ex() {
    var d0 = document.getElementById('d0'), d1 = document.getElementById('d1');
    d1.style.left = Math.floor(d0.offsetWidth / 2) + 'px'; tid = 0;
    }
    function rs() { tid > 0 && clearTimeout(tid); tid = setTimeout(ex, 1000); }
    </script>
    </head><body onresize="rs()" onload="ex()">
    <div id="d0"><div id="d1" style="position:absolute">X</div></div>
    </body></html>
    626 : 612 - 2010/04/13(火) 18:06:08 ID:??? (+67,+29,-28)
    >>625
    ありがとうございます。
    私も同じようなスクリプトを書きました。

    そのとき思ったのが、tidへの書き込みが重なることがあるかないかです。
    同時アクセスは起こりえないんでしょうか?
    627 : Name_Not - 2010/04/13(火) 18:22:14 ID:??? (+38,-27,-12)
    >>626
    ブラウザ上のJavaScriptは単一スレッドで実行されるから、同時アクセス
    は起こり得ない。
    628 : 612 - 2010/04/13(火) 18:28:10 ID:??? (+54,+21,+2)
    >>627
    ありがとうございます。スッキリしました。
    629 : Name_Not - 2010/04/13(火) 19:57:31 ID:??? (+57,+29,-14)
    リキッドデザインにすればよいのではないのかしら
    630 : Name_Not - 2010/04/13(火) 20:29:19 ID:??? (+79,+29,-26)
    送信フォームなどでボタンの2度押しをできないしているものがありますが、
    あれはjavascriptでやっているのでしょうか?
    631 : Name_Not - 2010/04/13(火) 21:08:20 ID:??? (+57,+29,-19)
    一番必要そうなのは、多段組みで段数を領域幅に応じて変化させる
    とかかな。そういうのはCSSだけじゃできないから。
    632 : Name_Not - 2010/04/13(火) 21:23:59 ID:??? (+50,+27,+0)
    いや、できるし。
    633 : Name_Not - 2010/04/13(火) 21:30:38 ID:??? (+57,+29,-54)
    うーん、1つの「段」に入るテキストの量も段数の変化とともに
    変わるわけだと思うけど、内容量を変えるとかできるの?
    本当ならCSSスレに質問に行こうっと。
    634 : Name_Not - 2010/04/13(火) 21:48:55 ID:??? (+50,+22,-25)
    普通にCSSでできるだろ
    JSが必要になるのは条件によって文字の詰め方を変えるとき
    635 : Name_Not - 2010/04/13(火) 22:24:01 ID:??? (+0,-30,-36)
    min-width max-width min-height max-height
    好きなのを選べ
    636 : Name_Not - 2010/04/13(火) 22:45:48 ID:??? (-6,-29,-1)
    >>635
    全部IE6で使えないね
    637 : Name_Not - 2010/04/13(火) 23:11:19 ID:??? (+43,+0,-75)
    >>630
    ・1回押したらJavaScriptでボタンを無効化する
    ・ボタン押下時、トークン(画面を表示するごとに毎回変わる値)を一緒に送信。
     サーバ側で2回同じ値が送信されてきたら2回目以降を弾く
    を両方やるのが普通
    638 : Name_Not - 2010/04/13(火) 23:24:03 ID:??? (+63,+29,-4)
    諸君らの愛してくれたIE6は死んだ。なぜだ!?
    639 : Name_Not - 2010/04/13(火) 23:28:25 ID:??? (+14,-26,-2)
    >>638
    まだまだ現役ですが。ウチの会社IE7以上は使用禁止
    640 : Name_Not - 2010/04/14(水) 00:44:43 ID:??? (+45,+27,-2)
    だが斬る
    641 : Name_Not - 2010/04/14(水) 01:08:43 ID:??? (+4,-29,-1)
    >>639
    IE7使えるじゃん
    問題ない
    642 : Name_Not - 2010/04/14(水) 01:36:17 ID:??? (-1,-29,-4)
    >>641
    IE7以上は使用禁止=IE7は×
    646 : Name_Not - 2010/04/14(水) 03:57:31 ID:??? (-11,-30,-231)
    >>645
    >>643じゃないけど、それは関係ないと思う
    こっちで試してみ

    var arr = [], elems = document.getElementsByTagName("img");
    for (var i = 0, len = elems.length; i < len; i++) (function(elem) {
    var img = new Image();
    img.onerror = function() {
    console.log(this.src);// こっちは出力される
    arr.push(this.src);
    };
    img.src = elem.src;
    })(elems[i]);
    console.log(arr);// こっちは出力されない

    さっきから試行錯誤してるんだが、よー分からんな
    onerrorが駄目ならonloadでとって差分とればいいじゃないと思ったけどこれも駄目だった(Chromeならこの方法でできた)
    647 : Name_Not - 2010/04/14(水) 04:01:13 ID:??? (-6,-29,-4)
    ヒント:同期と非同期
    648 : Name_Not - 2010/04/14(水) 05:10:33 ID:??? (-6,-29,-3)
    ヒント:循環参照
    649 : 645 - 2010/04/14(水) 09:55:34 ID:JgC9T0UH (-28,+21,-15)
    うまく伝わらなくて申し訳ない。

    ヒント:スコープ
    650 : Name_Not - 2010/04/14(水) 14:14:51 ID:??? (-1,-29,-9)
    Fxではimg.onerrorが非同期になっているから?!

    同期にすればいいってこと?
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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