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

    元スレJavaScript ライブラリ総合質問所 vol.4

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

    501 = :

    速さが問題になってない時に速さを聞くのは、
    速さしか良い悪いの比較方法を知らないからなんだろうな。

    速さが問題になってないのなら、比較するときに茎べき言葉は
    どちらがメンテナンス性高い? やどちらが短くかける? だ
    メンテナンス性が高くて短い方が、バグも減るし。

    503 = :

    >>501
    それは当事者が考えるべきことであなたが心配することじゃない

    504 = :

    >>503
    当事者に考えさせるために言ってる。
    いわば教育。

    いちいちあんたが反論することじゃない。

    505 = :

    >>504
    ケースバイケースなのに速度に問題がないと決めつける必要はない
    あなたの視野が狭いだけ

    507 = :

    >>496だけどすまんかった。
    速度に問題があってパフォチューしてた。
    .eq(i)にしてたんだけど、もっと速くなるならと思って聞いてみた。
    $(selector)[index]にしてみたけどouterWidth()が
    jqueryみたいで残念ながらダメだった。

    508 = :

    パフォーマンスチューニングとは
    どこが遅いか?って聞くことではなく、

    どこにどれだけの時間がかかっているかを
    調べることだ。

    509 = :

    >>507
    jQueryをなくしてみたら?
    あるいはアルゴリズムに問題があるのかもしれない

    510 = :

    jQueryを隠すと、開発効率が大幅に下がるからなぁ。
    それじゃ本末転倒だし。

    511 = :

    >>507
    outerWidth()でふと思ったんだけど、ひょっとしてブラウザに何度もレンダリングさせて
    描画サイズを取得してどうこうって処理でもしてる?

    512 :

    JavaScriptでバナーを貼ると空間ができるのですが
    バナー同士くっつけるんには、どうしたらいいのでしょうか?

    514 = :

    ありがとうございます。

    515 = :

    <div id="wrapper">
    <div id="slider">
    <p class="left">←</p>
    <div class="box">あ</div>
    <div class="box">い</div>
    <div class="box">う</div>
    <div class="box">え</div>
                :
                :
    <p class="right">←</p>
    </div>

    516 = :

    すみません;間違えて途中送信してしまいました

    519 = :

    クリックしたときの処理の最初に追加
    if($("#slider").is(":animated")) return;

    520 = :

    お早い返答ありがとうございます!解決しました!

    521 = :

    >>515-518
    何も反応しないけど、何をやりたいの?
    サンプルを出すなら動く事を確認してから出して
    >>1にサンプルコードを載せるサイトが載ってるでしょ
    http://jsfiddle.net/j8fdg81b/

    522 = :

    解決したのね

    523 = :

    jQuery.ajax でhtmlを取得するときimgタグがあれば画像もロードされますが、これを抑止するオプションはありますか?
    Ajax options で、
    dataFilter: function (data) {
    data = data.replace('img', 'noimg');
    return data;
    }
    のようにすると抑止されるのは確認できましたが、
    根本的にimgタグがそのままでもロードさせないオプションがないかと調べていますが見つけられません
    よろしくお願いします

    524 = :

    >>523
    そういったオプションはないと思う
    HTMLがそのままでも読み込まないようにしたいならDOMParserしかないだろう
    http://developer.mozilla.org/ja/docs/Web/API/DOMParser

    525 = :

    >>524
    ありがとうございます。調べてみます。

    526 = :

    DOMParserは大半のブラウザに対応してないみたいだから使えないだろうね。

    imgタグがあってもdocumentに追加していなければ
    画像はロードされないはずだから、

    var $elements = $(data);

    // ここでimgタグを探してsrcからdata-srcに移動
    $elements.find('img').each(function() {
      $(this).data('src') = $(this).attr('src');
      $(this).removeAttr('src');
    });

    $(document.body).append(elements);

    とかでもいいかも。まあやってることは>>523とはそう変わらないけど
    DOMとして解釈している所が違うかな。

    527 = :

    >>526
    > DOMParserは大半のブラウザに対応してないみたいだから
    そんなことはない

    > imgタグがあってもdocumentに追加していなければ画像はロードされないはずだから、
    new Image でもロードされる

    528 = :

    >>527
    デスクトップ モバイル
    機能 Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
    XML のサポート (有) (有) (有) (有) (有)
    SVG のサポート ? 10.0 (10.0) ? ? ?
    HTML のサポート ? 12.0 (12.0) ? ? ?

    529 = :

    >>528
    出典ぐらい示せ
    古いMDNを見てるんじゃあないのか?
    実際に使ったことがある人なら情報が古い事にすぐ気がつくはずだが
    http://developer.mozilla.org/en-US/docs/Web/API/DOMParser

    530 = :

    >>523 ですが、画像がロードされるタイミングを理解していなかったことに気がつきました
    自分のコードでは$.parsHTML(data)や$(data)を実行したときにロードされていました
    一方、DOMPaserを使うとロードされないのですね

    531 = :

    そうそう。普通にimg要素を作っちゃうと、documentに追加しなくても勝手にロードしちゃう
    逆にこれを利用すると画像のプリロードをすることができる

    532 = :

    >>529
    Safariはnot supportじゃねーかw

    533 = :

    >>532
    それのどこが「大半のブラウザに対応してない」なんだ?
    >>528のような古い情報を持ち出しておいて今更体裁を取り繕っても無駄

    534 = :

    じゃあ、言い換えるよ?

    DOMParserはSafariに対応していないからだめだろう。

    536 = :

    >>534
    Safari には createHTMLDocument ガあるから問題ない
    クロスブラウザを指摘するなら駄目出しだけせずに代替機能を把握しておけ
    http://developer.mozilla.org/en-US/docs/Web/API/DOMImplementation.createHTMLDocument

    537 = :

    一番いいのは、各ブラウザごとの仕様の差を吸収する
    ライブラリを使うことなんだよな。

    http://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-Browser-Polyfills
    > DOM Parsing and Serialization
    >
    > insertAdjacentHTML.js by Eli Grey, implements insertAdjacentHTML
    > outerHTML.js by Eli Grey, implements outerHTML
    > DOMParser HTML extension by Eli Grey, implements DOMParser text/html support

    ここに書いてある、DOMParser HTML extension
    http://gist.github.com/eligrey/1129031
    ってのを使えばいいのでは?

    クロスブラウザ対応のためにはブラウザの機能を直接使うのではなく、
    こういうライブラリを使うのが一般的だよ。

    538 = :

    この程度の Polyfill なら自前で書けるし、ライブラリを使うまでもないと思うがな
    自分のコードに自信を持てない人はライブラリを使う
    それだけの話

    539 = :

    >>537
    >http://gist.github.com/eligrey/1129031
    これは酷いな
    - DOMParser を使えない実装で ReferenceError
    - text/html の決め打ち
    - DOCTYPE宣言、head要素を無視

    とてもじゃないが、DOMParser の Polyfill とは思えない
    まともにコードを読めない人が質の悪いライブラリを使うのなら迷惑この上ない
    http://dvcs.w3.org/hg/innerhtml/raw-file/tip/index.html#the-domparser-interface

    542 = :

    Mozillaが紹介しているからだけど?
    http://developer.mozilla.org/en-US/docs/Web/API/DOMParser
    > DOMParser HTML extension for other browsers
    > /* inspired byhttp://gist.github.com/1129031 */

    545 = :

    「MDNにあったら無条件に信じる」は技術者として駄目だろ
    DOMParser と createHTMLDocument はそれなりに仕様が異なるのでライブラリで吸収するならもっとコードが長くなる
    実際にはその時々で分岐コードを書いてもたいして手間にならないし、間違いがない

    546 = :

    いや、手間になるからコード長くなってるんだろw

    547 = :

    この程度で長いと感じる人もいるんだな

    548 = :

    いつも関数一つで数百行を相手にしている人にはそう感じるんですね。

    俺なら一行が二行になったら、倍。と感じるわw

    549 = :

    >>548
    > いつも関数一つで数百行を相手にしている人にはそう感じるんですね。
    それはおまえの思い込みによる決め付けだ

    > 俺なら一行が二行になったら、倍。と感じるわw
    必要以上のコード量があるのは無駄だが、「必要な処理が抜けている」との指摘にその反論は的外れだろう
    反論したいならMDNのコードが必要十分だという具体的な根拠を出せ
    おまえの勝手な思い込みや抽象論はどうでもいい

    550 = :

    MDNのコードは足りない。
    実際にはもっと多くのコードが必要。

    それを自分で作るのが面倒だから
    既存のライブラリを使うって話になる。


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

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


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