タグ

ブックマーク / www.koikikukan.com (5)

  • 「https://」で始まるページでブックマークレットが動作しない理由

    「https://」で始まるページでブックマークレットが動作しない理由を調べてみました。 1.問題点 はてなブックマークでブックマークをするときには、いつも公式のブックマークレットを使っています。 が、「https://」で始まるページではこのブックマークレットが動作しない場合があります。 FirefoxやChromeでこの現象が発生します。 ブックマークできない代表的なURLはTwitterやFacebookなどです。 なお、「https://」で始まるすべてのページでブックマークレットが動作しないという訳ではありませんし、ブックマークレットによっては動作するものもあります。 2.原因 調べてみたところ、ChromeやFirefoxでは「Content Security Policy」というものに対応しているためのようです。 「Content Security Policy(CSP)」は

    「https://」で始まるページでブックマークレットが動作しない理由
  • jQueryプラグインの先頭にセミコロンがある理由

    jQueryプラグインの先頭にセミコロンがある理由を調べてみました。 1.「jQueryプラグインの先頭にセミコロン」とは? 例えば、レスポンシブ対応で画像を拡大表示できる「SuperBoxプラグイン」のコードは次のようになっています。 ;(function($) { $.fn.SuperBox = function(options) { var superbox = $('<div class="superbox-show"></div>'); var superboximg = $('<img src="" class="superbox-current-img">'); …中略… }); }; })(jQuery); 1行目の行頭にセミコロンがついています。 ;(function($){ 直感的に「エラー防止用かな?」と思って調べてみたらそのとおりだったのですが、以下調べたことについ

    tarchan
    tarchan 2013/06/18
    >混在させて、さらに圧縮・難読化などでコードを1行にしたときに直前のコードにあるべきセミコロンがなかった場合、エラーになる可能性が高いです。
  • ソーシャルボタンのJavaScriptでfunctionの前に「!」がついている理由

    ソーシャルボタンのJavaScriptでfunctionの前に「!」がついている理由を調べてみました。 1.はじめに TwitterPocketなどのソーシャルボタンのコードをみると、共通してscript要素の中にあるfunctionの前に「!(エクスクラメーション)」がついています。 Twitterの場合 <a href="https://twitter.com/share" class="twitter-share-button" data-via="yujiro" data-lang="ja" data-size="large">ツイート</a> <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getE

    tarchan
    tarchan 2013/06/18
    >function全体を括っているカッコの代わりにJavaScriptの単項演算子「+」「-」「!」「void」「typeof」を使うこともできる
  • jQuery ベースのドロップダウンメニュー「Superfish」

    Superfish は jQuery ベースでドロップダウンメニューを実現するためのライブラリです。 サンプルを用意しましたので動作をご確認してください。 Superfish によるグローバルナビゲーションのサンプル ここでは、Superfish + Movable Type(配布テンプレート)によるグローバルナビゲーションを設定方法を紹介します。 なお、配布サイトのサンプルを試しましたが、書かれている通りに実行しないものがいくつかありました。ここではサンプルの「with Supersubs」を選びました。理由は、サンプルの設定通りに動いてくれたことと、メニューの幅を変更でき、使いやすそうだったためです。 また、Superfish では、エントリーで紹介するサンプル以外にも、以下のようなことができます。 IEでプルダウンに重なっても表示 縦型メニュー 2段目のサブメニューを水平表示 1.

  • IE7 で pre 要素が適正に表示されない不具合を修正

    当サイトでは、ソースコード等を pre 要素(+code 要素)で表示していますが、「1行だけのソースコードを表示している場合、IE7では適正に表示されません」というご指摘をいただきましたので修正致しました。 1.問題点 pre 要素で1行だけのソースコードを表示していると、IE7 では次のような表示になります。 IE7 2.原因 そもそも、IE6 以外のモダンブラウザで、「overflow: scroll;」指定を行なうと、下に冗長な空白が表示されます。これを避けるために、IE6 以外のモダンブラウザに対し、CSS ハックを利用して「overflow: auto;」を設定しているのですが、IE7 に「overflow: auto;」を適用されると、1項の問題が発生します。 pre { overflow: scroll; } html > body pre { overflow: auto

    IE7 で pre 要素が適正に表示されない不具合を修正
    tarchan
    tarchan 2009/04/03
    overflowの冗長な空白を消すためのハックは冗長だと思う。
  • 1