タグ

ブックマーク / ginpen.com (9)

  • JavaScript設計の世代と近未来の話。(JavaScriptおれおれAdvent Calendar 2014 – 24日目) | Ginpen.com

    JavaScriptおれおれAdvent Calendar 2014 – 24日目 個人的に、こんな感じで認識してますって話。書くにあたりあんまり精査してないので勘違いありそう。やさしく教えてください。 もちろん個々人では先取りしてあれやこれややってる人もいて、そういう人たちは特に今でも第一線で頑張っているように思う。 原初 設計なし DHTML (Dynamic HTML) NoScript 設計なしに書いていた時代。 もちろん個別のアルゴリズムとかはあったんだけど、アプリケーションというよりはウィジェットとかそういう規模のもの。 あれよあれ、マウスカーソル追っかけるやつとかそういうの。もちろんまともに考えられたものもあったけど、少数派。JavaScriptといえば「よくわからない派手で邪魔なもの(を作るやつ)」という認識。ブラウザーの設定やプラグインでスクリプトの実行を停止している閲覧

    JavaScript設計の世代と近未来の話。(JavaScriptおれおれAdvent Calendar 2014 – 24日目) | Ginpen.com
    tyage
    tyage 2015/02/05
  • :visitedと一緒にbackground-imageとかは使えないようになってるよ。プライバシー保護が理由。(CSS おれおれ Advent Calendar 2012 – 15日目) | Ginpen.com

    訪問済みリンクを示すセレクターです。なお未訪問のリンクは:linkで得られます。 いずれもリンクを前提としているので、要素aの指定は省略して問題ないでしょう。 背景画像を指定するプロパティです。読み込みに時間がかかる場合もあるので、background-colorも一緒に指定しておきましょう。(してないとこ多いんですよね……。) background-positionを使ったCSSスプライトという技術も有名ですね。 プライバシー情報漏洩の仕組み さて閑話休題。この二つを組み合わせて悪用すると、「(他サイトへの)訪問履歴」を得る事が出来てしまいます。 background-imageが:visitedと一緒に使える場合を考えます。 この時に問題になるのが、「画像を読み込む」つまり「画像をウェブサーバーへ要求する」という当たり前の行為です。 要求を受け取ったウェブサーバーは、要求している画像の

    :visitedと一緒にbackground-imageとかは使えないようになってるよ。プライバシー保護が理由。(CSS おれおれ Advent Calendar 2012 – 15日目) | Ginpen.com
    tyage
    tyage 2015/01/02
  • JSファイル全体を括るfunctionについての話。(JavaScriptおれおれAdvent Calendar 2014 – 01日目) | Ginpen.com

    これですね。これ何か呼び方あるの? なにこれ グローバル変数にならないようにする仕組み。 スコープ問題 JavaScriptではスコープ(変数の有効範囲)は関数単位(function(){~})になるのが基。 そして一番外側、どの関数の中でもないものは「グローバルスコープ」に所属する「グローバル変数」となり、どこからでも利用できる変数になる。そうなるとどこかで変数の名前がかぶった際、勝手に値が変わったりして大変恐ろしい事になってしまう。 そこで、ファイル全体を関数で括る事でスコープを生成して、グローバルではない変数にしておこう、というもの。ただしvar宣言なしに変数を使い始めると、結局グローバル変数になってしまうので注意。 次世代JavaScriptだとletとかあるけど触れません、関係ないし。 関数の前後にくっついてる括弧は 関数は作成するだけでは何もならないので、即時実行してやります

    JSファイル全体を括るfunctionについての話。(JavaScriptおれおれAdvent Calendar 2014 – 01日目) | Ginpen.com
    tyage
    tyage 2014/12/01
  • 必殺の .apply()フックを打つべし! 打つべし!(JavaScript おれおれ Advent Calendar 2011 – 17日目) | Ginpen.com

    JavaScript おれおれ Advent Calendar 2011 – 17日目 .apply()で成り済ましができたり仕事をスルーして丸投げしたりする事ができますが、さらにもうひとつ、フックを行う事ができます。 フック(hook)というのはフック船長のフック、鉤爪の事で、処理を「ひっかける」ような事です。ある関数が実行される際に、独自のコードを実行させる事ができます。 フック (プログラミング) – Wikipedia フック(Hook)は、プログラム中の特定の箇所に、利用者が独自の処理を追加できるようにする仕組みである。また、フックを利用して独自の処理を追加することを「フックする」という。 あの処理がどこで呼ばれてるかわからないときに 具体例をひとつ。例えばjQueryで「どこかのタイミングで勝手にクラス名が追加されてしまって困っている」という場合を考えます。その場合は .add

    必殺の .apply()フックを打つべし! 打つべし!(JavaScript おれおれ Advent Calendar 2011 – 17日目) | Ginpen.com
    tyage
    tyage 2014/06/07
  • .apply()を駆使してスルー力を極めろ(JavaScript おれおれ Advent Calendar 2011 – 16日目) | Ginpen.com

    JavaScript おれおれ Advent Calendar 2011 – 16日目 (※「スルー力」は「するーか」じゃなくて「するーりょく」です。) .apply()を使って他の関数を実行できる事は昨日示しました。 これを応用して、メソッドが呼ばれた際にそのままスルーして、別のメソッドが呼ばれたかのように振る舞う事ができます。

    .apply()を駆使してスルー力を極めろ(JavaScript おれおれ Advent Calendar 2011 – 16日目) | Ginpen.com
    tyage
    tyage 2013/11/08
  • JavaScriptをもっと上達したい人へ、最後のヒント | Ginpen.com

    Ginpen.com Ginpen.com 高梨ギンペイ @ginpei_jp @ginpei 📻 RSS 🔍 検索 (*’-‘) oO( ブクマばっかしてないでコード書きなさい。) サイトでは Cookie 技術及び Google Analytics サービスを利用してアクセスの利用統計を計測しています。

    JavaScriptをもっと上達したい人へ、最後のヒント | Ginpen.com
    tyage
    tyage 2012/01/29
    あとで読む
  • jQuery 1.7の更新内容をまとめたよ。 | Ginpen.com

    jQuery 1.7が公開されたので、早速1.6.xからの更新内容をまとめてみました。 jQuery: » jQuery 1.7 Released (リリース記事) Version 1.7 – jQuery API (公式ドキュメント、1.7で変更があったもののみ) 1.7 all tickets – jQuery Core – Bug Tracker (1.7の全チケット) リリース記事の翻訳じゃないです。 主な変更点 個人的に気になったものをピックアップしてみますよ。 既存の .bind()や .live()等に置き換わる .on(), .off()を追加 .bind(), .delegate(), .live()が統合されました。(これらも引き続き使用できます。) →詳細後述します。 toggleと.stop()の連携を改善 toggle系と組み合わせた際におかしくなってしまうのが改

    tyage
    tyage 2011/11/06
  • jQuery1.6のattr()で困ったら、1.6.1にすればいいみたい。 | Ginpen.com

    先日jQuery 1.6がリリースされましたが、案の定.attr()関連で議論になったようで、一週間後に後方互換を保つ更新が行われました。 jQuery: » jQuery 1.6.1 Released 1.6の更新内容は先日の記事をご覧頂ければ。 jQuery1.6の更新内容をまとめたよ。 | Ginpen.com 更新内容 jQuery 1.6では.prop()メソッドの追加と.attr()メソッドの変更があり、これが「属性」と「プロパティ」の差、及び関係性についての議論を引き起こしました。結果として、1.6.1では後方互換を保つよう修正される事になりました。 つまり1.5.2から(1.6を飛ばして)1.6.1へバージョンアップする際は、.attr()関連のコードは変更が不要です。 なお.date()の方は1.6のリリースノートの通りの動作のままである事に注意してください。 前回(1.

    jQuery1.6のattr()で困ったら、1.6.1にすればいいみたい。 | Ginpen.com
    tyage
    tyage 2011/05/20
  • jQuery1.6の更新内容をまとめたよ。 | Ginpen.com

    昨日jQuery1.6が公開されたので、その内容をまとめてみました。 jQuery: » jQuery 1.6 Released だいたい原文にそってますが、翻訳ではありません。 追記 : data()の扱いが誤っていたので修正しました。キーをキャメルケースにする必要があるとしていましたが、引数を与えずにマップを得た場合の話で、引数にキーを与えて個別に取得する場合は過去のコードと互換性があります。thanks @GeckoTang !(23:11) 変更点 既存コードに影響がある変更がいくつかあります。 data属性の自動マッピング ハイフン “-” を含む名前のとき、$element.data()に引数を与えずに得たマップのキーはキャメルケースに変換されるようになりました。 var $div = $('<div data-abc-xyz="123" />'); var data = $d

    jQuery1.6の更新内容をまとめたよ。 | Ginpen.com
    tyage
    tyage 2011/05/04
    attrの変更は書き換えが面倒だなあと。
  • 1