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

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

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

    202 = :

    >201
    説明する気あるの?
    無知は答えなくていいからw

    203 = :

    そういうことやね

    206 = :

    ピーエスユードと読んでた時期が僕にもありました・・・

    208 = :

    これは見たかな。
    http://d.hatena.ne.jp/onozaty/20060706/p1

    209 = :

    知らんかった…

    まあサポート切れたFirefoxは無視していいと思うよ

    210 = :

    GoogleChromeで選択文字列を取得する方法を教えて下さい。
    ぐぐったりしてみて、window.getSelection()+''; のようにすれば取得できるようなことが書いて
    あったんですが、うまくいきませんでした。

    function test() {
    var selection = window.getSelection()+'';
    return selection;
    }

    もちろん window.getSelection() でも駄目でした。
    わかる方教えて下さいまし。

    211 = :

    問題ないはずだけど、具体的にどう駄目なの?
    エラーが出るの?test()の戻り値がおかしいの?

    212 = :

    エラーは出ていません。空白で出力されているだけです。
    出力部分を

    <SCRIPT language="JavaScript">
    <!--
    document.write("<p>" + test() + "</p>");
    //-->
    </script>

    みたいな形でやっているので、こちらが原因かとも思ったのですが、test()の戻り値に適当な文字列をセットしたら
    出力されました。

    213 = :

    document.writeの時点で文字列選択されてるわけないよね

    217 = :

    >>215
    >>216
    ありがとうございます。
    >>214のサイトのHTMLの書き方は悪いですね。
    自分のはHTML Lintに通る位には修正してあります。

    >>214に書き忘れてしまったのですが、私の標準ブラウザはfirefoxです。
    document.all["ID"] を document.getElementById("ID") にしたらURL付きでも動くようになりました。

    >>214のサイトにあるスクリプトはグローバル変数があって嫌なので以下のようにしました。
    ところが、alertが「あると」うまくフェードインするのですが、alertをコメントアウトするとうまく動きません。
    なぜでしょうか?

    function strFade2( id, colors, itv )
    {
     var color_num = colors.length;
     var color_pos = 0;

     function fade( ){
      if( color_pos < color_num ){
        // alert( color_pos ); // これがあるとうまく行く

        var c = colors.charAt(color_pos);
        document.getElementById(id).style.color = "#"+c+c+c+c+c+c;
        color_pos++;
        setTimeout( fade(), itv );
      }
     }

     fade();
    }

    218 = :

    setTimeout( fade(), itv );

    setTimeout( fade, itv );
    これはsetTimeout( function(){
    fade();
    }, itv );と同じ。
    実行タイミングを考えてみましょう。

    219 = :

    というかalertがあるとなんで動くんだろ

    220 = :

    alertで一旦OK押すまで処理が中断。
    押したら色変化→setTimeout発動
    以下ループと思ったけど、どうだろう。
    itvを10000とかにしたらアラートあっても動かないと思う。

    アラートがないと一瞬ですべてのsetTimeoutが実行される。

    221 = :

    カッコをつけるのは「その場でその関数を評価(実行)する」という意味なので、
    話としては setTimeout の中の fade() を fade にすれば終わり

    setTimeout( fade(), itv );
     ↓
    var result = fade(); // (a) その場でfade()を実行
    setTimeout( result, itv ); // (b) result=undefinedに対してsetTimeout

    こう書き直すと分かりやすい(本当は違う、正しくは>>218の言う通り)
    color_num = 3であれば、
    1. まず最初にfade()が呼ばれ、
    2. (a)が実行されてfade()が呼ばれ、
    3. その中の(a)でさらにfade()が呼ばれ、
    4. その中の(a)でさらにfade()が呼ばれ、
    5. この時点でcolor_pos=3なのでifブロックは実行されずに終了し、
    6. 4.に戻るが、4.のfade()の(b)が実行されてエラーが発生

    Firefox使っていれば「意味のないsetTimeoutだ」のようなエラーが発生しているはず

    222 = :

    >>218
    >>220
    >>221
    ありがとうございます。
    理解することができました。

    C++(他言語出して申し訳ないですが)で言う所の
    イベントハンドラに渡す関数ポインタと考えれば気が付けた(かも知れない)ミスでした。。。
    応用力が無くて恥ずかしい。

    >>221
    >Firefox使っていれば「意味のないsetTimeoutだ」のようなエラーが発生しているはず
    これはどこに表示されるのでしょうか?

    223 = :

    ツールメニューのエラーコンソール

    224 = :

    >>223
    ありがとうございます。
    この機能全く知りませんでした。

    226 = :

    >>255
    ずっと前からfirebug入ってはいるんですけど、全然使ってませんでした。
    ちゃんと使い方覚えます。

    227 = :

    プロファイルを分けて、
    firebug用のプロファイル作っておくと吉

    228 = :

    >>227
    そこ詳しく

    229 = :

    >>227
    いや、わかった

    230 = :

    >>213

    それはどういうことでしょう?

    document.writeでhtmlとして出力されると思うのですが。。。
    ちなみにボタンをクリックすると選択した文字列がpopupで表示されるchrome extensionsを作成しています。

    231 = :

    >>230
    getSelection()は、省略せずに書けばwindow.getSelection()

    popupのwindow.getSelection()じゃ駄目
    文字列選択されているページのwindowを取得して、そのwindowからgetSelection()を呼ぶ

    232 = :

    >>230
    文字選択って描画し終わってからじゃないと無理だろ?

    233 = :

    ん?

    234 = :

    正規表現で「同じ数字が2つ以上」という表現はどうしたらよいのでしょうか?

    235 = :

    説明不足ですいません。
    例えば「2222」「44」「9999999」という数字全てにマッチさせたいのです。

    236 = :

    JavaScript完全に関係ねーぞ

    237 = :

    >>236
    なるほど、後方参照と言う方法があったのですね。
    この場合「/^(\d)\1+$/」という後方参照で解決しました。ありがとうございました。

    238 = :

    アホすぎて呆れた

    239 = :

    >>237
    あー、そんな事できるんだ

    240 = :

    >>237
    お前優しいな感動したわ

    241 = :

    いえ、>236のおかげで検索キーワードから「JavaScript」を削除できたので

    242 = :

    >>241
    他人が本人を装ってレスしてるのかと思ったけど、本人だったってこと?

    243 = :

    >>241
    ああ、そういうのあるよね。

    ググレカス⇒ググればわかるほどのFAQであることが判明し安心する
    とか

    244 :

    質問させてください

    アコーディオンタイプのメニューで
    accordion.jsを使っているのですが
    マウスオーバーのとき「指」になりません

    参考ページ
    http://blog.webcreativepark.net/sample/js/34/index3.html

    マウスオーバーで「指」にしたい場合、どうすればよいでしょうか?
     

    245 = :

    <style>
    .accordion_toggle:hover {cursor:pointer;}
    </style>
    リンクにマウス載せたときのこれか?js全く関係ないけどな。

    246 :

    >>245
    うわあああああ
    ありがとうございます!!!
    マジでありがとうございます

    そかjsじゃなく、cssでの制御なんですね・・・・迂闊

    本当に助かりました!!!

    247 = :

    >>246
    jsでスタイル指定してやれ

    248 = :

    >>247
    それでもcssやん

    249 = :

    クライアントサイドの技術は全然わからんわー
    誰か助けてくれ
    base64でエンコードされた画像データを、
    AddImage(base64Data);
    みたいな感じでブラウザ上に表示(というか横流し)したい。
    jQueryのscrollableみたいな感じで、スライドショーみたいなのを実現させたい

    250 = :

    >>249
    http://en.wikipedia.org/wiki/Data_URI_scheme


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

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


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