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

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

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

    $(this).attr
    でええやろ
    dataはキャッシュかなんかですげー使いにくいぞ

    253 = :

    $(function() {
     $('button').click(function() {
      var distance = $(this).data('distance');
      navigator.geolocation.getCurrentPosition(
       function(pos) {
        var crd = pos.coords;
        var url = location.href.replace(/\?.*$/, '');
        window.location.href = url +'?lat='+ crd.latitude + '&lng=' + crd.longitude+ '&distance=' + distance;
       },
       function() {
        console.log('error');
       }
      );
     });
    });

    254 = :

    答を書きはしたがな、これは、

    255 = :

    >>253
    なるほどー!なるほど!ありがとうございます
    jsって難しいですね

    257 = :

    locationの部分、これでいいのかな? あまり$.paramって使わんのよね

    $(function() {
     $('button').click(function() {
      var distance = $(this).data('distance');
      navigator.geolocation.getCurrentPosition(
       function(pos) {
        var crd = pos.coords;
        window.location.search = $.param({lat: crd.latitude, lng: crd.longitude, distance: distance});
       },
       function() {
        console.log('error');
       }
      );
     });
    });

    258 = :

    >>251
    attr使うぐらいなら、<input type="hidden" name="distance" value="1000> だな
    なぜかって? GETのパラメータだからだよ

    現在地の取得をどうにかできるならば、HTMLだけでこれで実行できるでしょ?

    <form>
    <input type="hidden" name="lat" value="?">
    <input type="hidden" name="lng" value="?">
    <input type="hidden" name="distance" value="1000">
    <input type="submit">
    </form>

    これにJavaScriptで現在地を入れ込むという処理を割り込ませると考える

    259 = :

    例えばこんな感じ

    $(function() {
     $('form').on('click', ':submit', function(event) {
      var form = event.delegateTarget;
      event.preventDefault();
      navigator.geolocation.getCurrentPosition(
       function(pos) {
        var crd = pos.coords;
        form.lat.value = crd.latitude;
        form.lng.value = crd.longitude;
        $(form).submit();
       },
       function() {
        console.log('error');
       }
      );
     });
    });

    コードを短く出来たわけじゃないけど
    HTMLだけで動くことを確認して、その続きで
    処理を加えていくという作り方ができる

    260 = :

    現在地の取得はhttpsにしないとエラーが出るゾ
    気づいたら昔作ったサービスが動いてなかったゾ

    262 = :

    http://www6.kaiho.mlit.go.jp/02kanku/aomori/tappisaki_lt/livecamera/index.html

    ここのライブカメラを見ようとするとJAVAのセキュリティの警告とやらが出て表示されないんですが、
    どうすれば見れる様になりますか?

    263 = :

    ここは、JavaScript のスレです

    Java ではありませんので、スレ違い!

    264 = :

    動画サイトを見ていて、動画ページでコメントだけを見たいときとかに、ページを軽くしようとして

    $("video").remove();
    とか
    $("video").parent().remove();
    とかするのですが、これだと音声は再生されたままになってしまいます

    コントローラーは消えるので音声を止められないし、ミュートだとちょっと重くなりそうなので
    ムービー関係のもの全て消す方法ってないでしょうか?
    例サイトはYouTubeです

    265 = :

    再生を止めればいいだけで消す必要なくない?

    266 = :

    >>264
    pause() を使うとか、src属性を無効なURLに設定するとか

    267 = :

    >>264
    for (var video of document.querySelectorAll('video')) {
    video.pause();
    video.parentNode.removeChild(video);
    }

    268 = :

    >>265,267
    再生を止めても、裏では動画や音声は読み込まれてるので、やっぱり結構CPUメモリ食べちゃうんですよね

    >>266
    無効なURLにするの良さげですね
    ありがとうございます

    270 = :

    まあ環境は人それぞれだから

    271 = :

    >>264
    一時期軽くしたいと思っていたときは、
    そういったものは原則OFFで、必要なときだけ再生するようにしていたな
    昔はProximitronでHTMLを書き換えて実現していた、
    比較的最近はブラウザの機能でFlashを自動的に再生しないようにしていた

    もしかしたらブラウザに動画を自動的に再生しないような
    設定があるんじゃないかな?
    もし今の俺が同じことをやろうとしたら、ブラウザのプラグインである
    TampermonkeyかStylishを使うかな? 実現できるか知らんけど

    274 = :

    http://developer.mozilla.org/ja/docs/Web/JavaScript/Language_Resources
    ECMAScript は JavaScript の基礎を成すスクリプト言語です。
    ECMAScript は標準化団体 ECMA International によって ECMA-262 および
    ECMA-402 specifications として標準化されています。
    次のような ECMAScript 標準が承認済みおよび策定中です:

    275 = :

    ショッピングサイトにビットコイン決済を導入した際に、価格表記をビットコイン、マウスを重ねたら円表記が出るシステムを外注したいのですが、JavaScriptで大丈夫でしょうか?

    276 = :

    >>275
    できるよ
    マウスオーバーで表示変わるのはJavaScriptの得意とするところだから問題ない
    単純なのならCSSでもできる
    リアルタイムな相場の取得はAPIでできる
    仮想通貨の各取引所がAPIを公開してるからそれ使えばいい
    取引所によって取得の仕方や形式が違うからその辺は好みかな
    ずっと提供されるかは保証ないからいくつかをフェイルオーバー的に作っておいた方がいい

    277 = :

    >>276
    事細かにありがとうございます。
    プログラミングの知識はないのですが、外注に当たって方向性だけでも確認したかったので助かりました

    278 = :

    HTMLは初級ぐらいでJavaScript(TypeScript)も普通ぐらいには使えるようになって、
    Reactも使えるようになったのですが、目的のUI作れません。
    WPF/UWPならXAMLとコントロール使って、AndroidならレイアウトファイルとViewコントロールを使って
    複雑でないUIならとりあえず普通に作ってアプリ作れるんですが。
    自分のレベルだとWebアプリだとかなり死ねます。

    例えば、ちょっとこの項目を右寄せ表示するにしてもできねぇーとかのレベルです。

    やっぱ、CSSを覚えるしかないのでしょうか??みなさんはバリバリCSS使いこなしてるんでしょうか??

    279 = :

    >>278の続きです。
    例えば、Material UIなどReact用のコンポーネントはドキュメント見れば普通には使えるようになったんですが、
    タブにアイコンつけたいとか、リスト表示でこの項目を右寄せしたいとか
    Reactコンポーネントのプロパティに用意されてないことやると、
    とたんにダメなレベルで、UIがつくれません。

    280 = :

    >>278-279
    cssも覚えないと、結局細かい事は何も出来ない

    >タブにアイコンつけたい
    font-awesomeのver4を使う

    >リスト表示でこの項目を右寄せ
    text-align:right

    281 = :

    >>278
    > やっぱ、CSSを覚えるしかないのでしょうか??みなさんはバリバリCSS使いこなしてるんでしょうか??

    HTMLもCSSも使いこなしてるよ。というかJavaScriptだけでやろうとしたら破綻する
    基本的にJavaScriptではデザインは作らない
    JavaScriptでやるのは状態に応じてclassを設定するとかそういうことぐらい
    そのclassに応じてどういう見た目にするかはすべてCSSで行う
    そうしないと面倒なだけだから

    逆にCSSを使いこなすと処理とデザインの責任範囲が明確になるから
    コードはシンプルになるし、デザインの修正も簡単になる

    282 = :

    個人的には細かいこと気になるならCanvasの方がオススメ

    284 :

    >>236
    >>237
    >>238


    規制で書き込めなかったけど読ませていただきました。
    無事解決しました!ありがとうございました(遅)

    286 = :

    「当方のエージェントは、追跡を避けるためメールアドレスを毎週変更している。

    かあわいい

    287 :

    ついに宇宙一難解なパズルが完成しました・・

    その名も
    『宇宙一難解なパズルゲーム』!!
    http://jagarikin.html.xdomain.jp/pzl.html

    htmlでできてるのでブラウザから手軽に宇宙一難解なパズルをプレイできるよ~

    288 = :

    5年ぶりに触り始めたんですけども、
    var不要論ってなんすかね?

    291 = :

    >>290
    > 関数を実行するだけ

    ではない。
    asyncFunction() は promise も返す。

    2 つめの then は、その promise がresolveされたときに呼ばれることになる

    292 = :

    >>291
    訂正
    2 つめの then は、…

    2 つめの then の中のfunctionは、 …

    293 = :

    >>292
    ありがとうございます。

    asyncFunction()
    .then(function (value) {
    console.log(value); // => 'Async Hello world'
    asyncFunction()
    }).then(function (value) {
    console.log(value); // => 'Async Hello world'
    })

    この書き方では動かないのは、これではpromiseが返ってこないということです…かね?
    説明が下手で本当に申し訳ないです。

    294 = :

    Promiseのthenメソッドが返すPromise Tはthenメソッド中でPromise Rを返した場合
    Rの解決を待って、その解決値を持ってTが解決されることになる
    つまり実質的にT==Rと言うように振る舞わせることが出来る
    つまり、
    非同期A .then( Aの解決値を得て、別の非同期Bを実行 ) .then( Bの解決値を得て、別の非同期Cを実行 ) .then ......
    というようにどんどんthenを繋げて行くことができる

    勿論then中でそのチェーンとは独立したPromiseを作成することを繰り返してもいいが、
    そうすると所謂コールバック地獄のようにネストが深くなってしまう
    それを平坦化するためにこの機能がある

    295 = :

    2つめのthenで捕まえられるようにだろ。

    296 = :

    失礼、リロードしてなかった。

    297 = :

    >>293
    Promiseをreturnするのが自然だけど
    気持ち悪いなら別にこう書いたって良い
    http://jsfiddle.net/4kks4bns/

    298 = :

    皆さん、ありがとうございました。
    ようやく納得がいきました。

    299 = :

    この流れで理解できたのか・・・?
    なんか質問者も回答者もずれまくってる気がするんだが

    300 = :

    なぜか納得してるようだが、これで納得できるはずがないので勝手に説明するわ

    まず基本(?)系。thenを二回続けているが、asyncFunction()は
    一回しか読んでないパターン

    asyncFunction()
     .then(function (value) {
      console.log(value); // => 'Async Hello world' ・・・(1)
     }).then(function (value) {
      console.log(value); // => undefined ・・・(2)
     });


    (2)でundefinedになっているのは、1回目のthenで何もreturnしてないから
    JavaScriptは関数で何もreturnしてない場合はundefiendになる
    (Rubyなどのように最後に評価された値ではない)

    次のように、thenでreturnすれば次のthenの関数の引数に渡すことができる

    asyncFunction()
     .then(function (value) {
      console.log(value); // => 'Async Hello world' ・・・(1)
      return value;
     }).then(function (value) {
      console.log(value); // => 'Async Hello world' ・・・(2)
      return value;
     });


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

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


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