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

    私的良スレ書庫

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

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

    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
    251 : Name_Not - 2013/06/18(火) 17:00:06.26 ID:??? (+51,+23,-3)
    製作段階で関数1行にまとめようとする意味がわかんね
    252 : Name_Not - 2013/06/18(火) 17:55:31.56 ID:??? (+51,+29,-8)
    スレに貼るサンプルとしてなら、
    >>245>>249程度の関数なら1行にしちゃってくれてるほうが見やすい
    254 : Name_Not - 2013/06/18(火) 20:25:04.32 ID:??? (-11,-30,-137)
    >>249
    <script type="text/javascript" src="jquery-1.10.0.min.js"></script>
    <script type="text/javascript">
    $(document).on("click",":button",function(){$("#target").val(this.value);});
    </script>
    <input type="button" value="あああ">
    <input type="button" value="いいい">
    <input type="text" id="target">
    255 : Name_Not - 2013/06/18(火) 20:34:16.45 ID:??? (-5,-30,-206)
    >>249
    name属性じゃなくてid付けたほうがいいよ。
    以下、同名のidに書き換えたと仮定し、
    ボタンのonclickを削除してスクリプトを以下のようにする。

    var form = document.getElementByID("frm");
    var target = document.getElementById('target');

    form.addEventListener('click', function(event){
    if(event.target.getAttribute('type') !== 'button') return;
    target.value = event.target.value;
    }, false);
    256 : Name_Not - 2013/06/18(火) 22:02:25.70 ID:??? (-4,-30,-110)
    [´・ω・`] i114-186-109-209.s41.a013.ap.plala.or.jp :2013/06/18(火) 19:32:52.04 ID:JeUARK/o


    よろしくお願いいたします。

    【名前欄】
    【メール欄】 sage
    【本文】↓
    >>249
    name属性じゃなくてid付けたほうがいいよ。
    以下、同名のidに書き換えたと仮定し、
    ボタンのonclickを削除してスクリプトを以下のようにする。
    257 : Name_Not - 2013/06/19(水) 02:09:08.79 ID:??? (+52,+29,-1)
    なにやってんすか
    258 : Name_Not - 2013/06/19(水) 02:42:18.76 ID:??? (+72,+29,-56)
    JavaScriptでオブジェクト指向プログラミングを始めました
    今まで上から下の処理と関数というシンプルな構造に慣れていたので非常にとっつきにくいです
    オブジェクト指向プログラミングをJavaScriptで学ぶ上で良いサイトがあれば教えてください
    259 : Name_Not - 2013/06/19(水) 02:54:08.06 ID:??? (-3,-30,-149)
    >>249
    「あああ」とかの文字列をhtml側から得たいという意図なら、

    function aaa(o){document.frm.target.value = o.value;}
     (略)
    <input type="button" value="あああ" onclick="aaa(this)" />
    <input type="button" value="いいい" onclick="aaa(this)" />

    こんな感じだな。

    懐かしい書き方だけど、
    まずはここからかな。
    260 : 238 - 2013/06/19(水) 05:29:00.83 ID:??? (+7,-30,-95)
    >>247
    fd.collect().
    ...
    fd.logging();

    したいときもあるんだ。
    setTimeoutやビージーループでWaitもどき作ったりするのも現実的じゃないので
    シンプルに書く方法はCallback関数しか無いみたいだね。

    fd.setOnCollectCallback(function(entries){...

    みたいな感じかねえ。
    せめてHTML5が全てのブラウザで対応していれば解決してるとどこぞに書いてあってげんなり。
    それはそうとありがとうございました。
    261 : Name_Not - 2013/06/19(水) 15:13:03.18 ID:??? (+12,-30,-19)
    >>260
    Defferedを理解できてないね

    var p = fd.collect();
    ...
    p.then(function(){fd.logging();});
    262 : 238 - 2013/06/19(水) 16:05:51.21 ID:??? (+25,-30,-146)
    >>261
    理解してないんじゃなくて、一連の非同期処理とDefferedは隠蔽したい。
    Collect関数内で複数Feedを取得することも考えることになるとCollect関数内でDeffered使って$.when().then()した方が楽だし、
    Collect関数がDefferred.promise返すのも処理として気持ち悪い。
    >>261な実装にすると、他の人が.thenしないで実装をしてしまったときに目も当てられないこともある。

    p.then(function(){
    fd.logging1();
    fd.logging2();
    fd.logging3();
    });
    こうなるより、コールバックに閉じ込めた方がいい気がするよ。
    あ、手法としては否定してないよ。
    自分が使う場合はそっちの方が楽な場合もあるし。
    263 : Name_Not - 2013/06/19(水) 16:25:49.69 ID:??? (+36,+4,-25)
    >>262
    考え方が古いね
    コールバック登録インターフェースなんてものを追加するより
    Promiseの方がシンプルだよ
    jQueryなんかはその方向
    264 : Name_Not - 2013/06/19(水) 17:13:48.57 ID:??? (+17,-5,-13)
    プロトタイプ大好き人間w
    265 : Name_Not - 2013/06/19(水) 17:39:53.26 ID:??? (+57,+29,-19)
    p.thenを外に書くか中に書くかしか違いがないという・・・
    266 : Name_Not - 2013/06/19(水) 18:21:56.20 ID:??? (+7,+29,-51)
    外に出せば共通的なPromiseのインターフェースをそのまま使える
    中に書くとそれへアクセスするための独自インターフェースの実装と、
    使用者もその独自インターフェースにつきあう必要がある
    267 : Name_Not - 2013/06/19(水) 23:04:47.06 ID:??? (+13,-29,-70)
    あ, い, う,

    という文字列があり、区切り文字は「, 」で固定です。

    ここから最後の「, 」を取り除いた「あ, い, う」という文字列を得るにはどうすればいいのでしょうか。

    var a = "あ, い, う, "
    var b = ", "
    a.slice(b.length, ???);


    とかで???の引数を変えてみても無理でした。
    268 : Name_Not - 2013/06/19(水) 23:06:39.84 ID:??? (+0,-27,-13)
    b.lengthって何かわかってんの?
    269 : Name_Not - 2013/06/19(水) 23:08:19.10 ID:??? (-1,-29,-2)
    つーかその場合使うのはsliceじゃなくてsplit
    270 : Name_Not - 2013/06/19(水) 23:08:26.70 ID:??? (+8,-14,-2)
    replaceでカンマをとれば?
    271 : 267 - 2013/06/19(水) 23:16:16.86 ID:??? (+0,-28,+1)
    replaceにしました
    ありがとうございました。
    272 : Name_Not - 2013/06/20(木) 00:07:57.31 ID:??? (+57,+29,-18)
    人のtwitterしばらく放っておくと「xx件の新しいツイート」ってボタン出てきますがどういう仕組みで受け取ってるんでしょうか?
    273 : Name_Not - 2013/06/20(木) 00:09:30.58 ID:??? (+51,+25,-16)
    定期的にajaxで通信しとるんじゃろ
    274 : Name_Not - 2013/06/20(木) 01:33:53.88 ID:??? (-5,-28,+0)
    websocketの可能性は
    275 : Name_Not - 2013/06/20(木) 01:36:42.93 ID:??? (+57,+29,-17)
    30秒間隔でhttps://twitter.com/i/timelineに引数だらだらつけて読みに行っとるな
    276 : Name_Not - 2013/06/20(木) 01:51:50.85 ID:??? (+3,-30,-58)
    position:fixed;にしておきながら本来position:static;であった場所に透明な空間を確保するのに軽い方法は何でしょう?
    今考えてるのはouterHeightを算出して大きさの等しい空の<div>を挿入するか
    後続要素のmargin-topに足し込むことです
    277 : 258 - 2013/06/20(木) 03:35:57.64 ID:??? (+62,+29,-183)
    オブジェクト指向難しいです
    メインの処理があって、ifで分岐し、forで繰り返し、何度も行う処理は関数で独立させる。
    これがずっとJavaScriptの基本的な書き方だと思っていたのですが
    オブジェクト指向を上手く使えるようになるとifもforも要らなくなると読みました。一体、どういう事でしょうか

    なんというか、オブジェクト指向のJavaScriptの全体像がつかみにくいです
    クラスやインスタンスやコンストラクタなどのプログラマ向けの説明でなく
    スクリプト視点でオブジェクト指向を解説しているサイトはないのでしょうか
    278 : Name_Not - 2013/06/20(木) 05:42:17.01 ID:??? (+6,-16,-16)
    JSでオブジェクト指向できるのか。
    279 : Name_Not - 2013/06/20(木) 05:47:55.19 ID:??? (+56,+23,-61)
    クラスの継承とか、関数のオーバーライドとか、仮想関数とか知ってれば、何ら難しい話ではないと思うが。
    普段、C++とかC#使ってるから、当たり前にオブジェクト指向してるが、JavaScript でも同じことが出来るのか。
    280 : Name_Not - 2013/06/20(木) 11:24:06.05 ID:??? (+57,+29,-43)
    JavaScriptにはクラスはありません。プロトタイプ方式のオブジェクト指向言語。
    だから「同じこと」といっても程度によるね。
    281 : Name_Not - 2013/06/20(木) 11:34:05.36 ID:??? (-5,-28,+0)
    C++とC#一緒くたにすんなよ
    282 : Name_Not - 2013/06/20(木) 11:50:12.10 ID:??? (+11,-16,+0)
    無理にifやforを排除する必要などない
    283 : 238 - 2013/06/20(木) 14:15:46.70 ID:??? (+60,+29,-73)
    >>266
    コールバック一個につきあうも糞もねえ。
    てーかJQUERYのAJAX系もコールバック関数多様しまくりじゃん。
    俺はJQUERY準拠で行くよ
    284 : Name_Not - 2013/06/20(木) 14:25:46.59 ID:??? (+52,+29,+0)
    まあ最初はそれでいいんじゃね。
    285 : Name_Not - 2013/06/20(木) 21:56:16.74 ID:??? (+6,-29,-41)
    >>283
    jQueryのAjax関係は今ではPromiseを返すようになってるよ
    互換のためにコールバック指定のインターフェースも残ってるけど
    286 : Name_Not - 2013/06/20(木) 23:25:21.76 ID:??? (+4,-23,-40)
    .load()だけは対応してないけどね。jQueryオブジェクトを返すから仕方がないけど。
    287 : Name_Not - 2013/06/21(金) 05:40:49.78 ID:FrZdsZ6R (+11,+29,-64)
    indexedDBの勉強を始めたのですが、
    サンプルを見ていると、dbをopenした後にイベントハンドラをセットしているように見えます
    たとえばこれ
    http://www.html5rocks.com/ja/tutorials/indexeddb/todo/
    openしたら、既にイベントが起こってるのでは?
    イベントが起きた後にハンドラをセットしているように見えます
    どういうことでしょうか?
    288 : Name_Not - 2013/06/21(金) 07:05:36.79 ID:??? (+43,+14,-33)
    >>287
    openの完了ハンドラの呼び出しが行われるのは、
    openの呼び出しを含むコードを終わりまで実行した後
    なんじゃないかな?
    290 : Name_Not - 2013/06/21(金) 23:57:22.11 ID:??? (+57,+29,-42)
    オライリーの
    『JavaScriptパターン 優れたアプリケーションのための作法』
    読んでるけど、かなり難しいね、この本。
    ぱっと見薄いんだけど、中身がギュッと詰まってる。
    291 : Name_Not - 2013/06/22(土) 15:28:30.78 ID:??? (+50,+27,+0)
    フォントを大きくしろよ。
    292 : Name_Not - 2013/06/22(土) 18:11:34.84 ID:??? (+3,-29,-8)
    Webソースのテキスト要素のみにspanタグを入れることは可能でしょうか?
    293 : Name_Not - 2013/06/22(土) 18:20:13.97 ID:??? (+12,-5,-2)
    294 : Name_Not - 2013/06/22(土) 22:21:59.39 ID:??? (+12,-15,-12)
    span作ってテキストノードを突っ込めばいい
    295 : Name_Not - 2013/06/23(日) 17:47:00.16 ID:??? (+130,+29,-33)
    iPhoneアプリで英語サイトの英単語をタップすると、その単語をハイライトするやつがあるのですがJavaScriptでそうゆうことは可能でしょうか
    296 : Name_Not - 2013/06/23(日) 18:08:32.97 ID:??? (+117,+29,-67)
    >>295
    できると思うよ。
    ハイライトってのは、同じページの中の特定の単語をハイライトさせるってことかな?
    でもどうやるんだろう。
    最初に全単語の一個一個にspanタグをつけるとか?
    そしたら簡単かも。
    297 : Name_Not - 2013/06/23(日) 18:11:50.99 ID:??? (+18,-30,+0)
    <script type="text/javascript">
    function fruit(){
    var f=getElementsByName('frm').fruit.options;
    if(f=1){frm1.firValue.value=100;
    frm1.secValue.value=80;
    frm1.thiValue.value=90;}
    if(f=2){frm1.firValue.value=80;
    frm1.secValue.value=90;
    frm1.thiValue.value=100;}
    if(f=3){frm1.firValue.value=90;
    frm1.secValue.value=100;
    frm1.thiValue.value=80;}
    }
    </script>
    <form name="frm">
    A店<input type="text" name="firValue" size="4" value=>円
    B店<input type="text" name="secValue" size="4" value=>円
    C店<input type="text" name="thiValue" size="4" value=>円
    <select name="fruit" onchange="fruit();">
    <option>-</option><option value="1">りんご</option><option value="2">みかん</option><option value="3">めろん</option>
    </select>
    </form>
    こんな感じで選択した物によって数字を変える感じのフォームを作りたいのですが
    うまくいきません
    どうしたらいいか教えてください
    お願いします
    298 : Name_Not - 2013/06/23(日) 18:24:21.21 ID:??? (-1,-29,-24)
    >>297
    JavaScriptででしょ?
    このスクリプトにはまったくイベントハンドラがでてこないけど?
    onClickとか使おうよ。
    299 : Name_Not - 2013/06/23(日) 18:32:35.49 ID:??? (+26,-28,-21)
    >>297
    inputつかわなくても、対応するspanの中身を変えたら?
    inputは見栄え悪いよ。
    300 : Name_Not - 2013/06/23(日) 18:32:38.75 ID:??? (+27,-30,-54)
    <INPUT type="button" name="buttoncalc" onClick="fruit()" value="決定">
    こういう風にですか?
    やってみましたがやっぱり動きません・・・
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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