2013年12月7日土曜日

jQuery UI のダイアログが画面に一瞬表示されるのを防ぐ

jQuery UI ではマルチブラウザに対応したダイアログを簡単に作成できます。
http://jqueryui.com/dialog/

ダイアログの初期化は JavaScript から行わなければならないので、HTML要素を読み終わった後に初期化すると、autoOpen を false に設定していても一瞬だけ画面にダイアログの中身が表示されてしまいます。

この場合は CSS でダイアログに設定している <div> の display を none にすれば表示されなくなります。ダイアログを $('element').dialog('open') で開く場合には勝手に中身を display: block などに変更してくれるので、最初に display: none だけ設定しておけば大丈夫です。

2013年12月6日金曜日

jQueryで取得したCSSの数値だけを抜き出す

CSS の設定値として px などを指定している場合は、以下のように後ろ2文字を削除して数値に変換できます。

parseInt($('element').css('left').slice(0, -2), 10);

2013年12月5日木曜日

PHP の mb_string で使用できるエンコーディング一覧

PHP の mb_string で指定する文字コード一覧です。

  • UCS-4*
  • UCS-4BE
  • UCS-4LE*
  • UCS-2
  • UCS-2BE
  • UCS-2LE
  • UTF-32*
  • UTF-32BE*
  • UTF-32LE*
  • UTF-16*
  • UTF-16BE*
  • UTF-16LE*
  • UTF-7
  • UTF7-IMAP
  • UTF-8*
  • ASCII*
  • EUC-JP*
  • SJIS*
  • eucJP-win*
  • SJIS-win*
  • ISO-2022-JP
  • ISO-2022-JP-MS
  • CP932
  • CP51932
  • SJIS-mac** (エイリアス: MacJapanese)
  • SJIS-Mobile#DOCOMO** (エイリアス: SJIS-DOCOMO)
  • SJIS-Mobile#KDDI** (エイリアス: SJIS-KDDI)
  • SJIS-Mobile#SOFTBANK** (エイリアス: SJIS-SOFTBANK)
  • UTF-8-Mobile#DOCOMO** (エイリアス: UTF-8-DOCOMO)
  • UTF-8-Mobile#KDDI-A**
  • UTF-8-Mobile#KDDI-B** (エイリアス: UTF-8-KDDI)
  • UTF-8-Mobile#SOFTBANK** (エイリアス: UTF-8-SOFTBANK)
  • ISO-2022-JP-MOBILE#KDDI** (エイリアス: ISO-2022-JP-KDDI)
  • JIS
  • JIS-ms
  • CP50220
  • CP50220raw
  • CP50221
  • CP50222
  • ISO-8859-1*
  • ISO-8859-2*
  • ISO-8859-3*
  • ISO-8859-4*
  • ISO-8859-5*
  • ISO-8859-6*
  • ISO-8859-7*
  • ISO-8859-8*
  • ISO-8859-9*
  • ISO-8859-10*
  • ISO-8859-13*
  • ISO-8859-14*
  • ISO-8859-15*
  • byte2be
  • byte2le
  • byte4be
  • byte4le
  • BASE64
  • HTML-ENTITIES
  • 7bit
  • 8bit
  • EUC-CN*
  • CP936
  • GB18030**
  • HZ
  • EUC-TW*
  • CP950
  • BIG-5*
  • EUC-KR*
  • UHC (CP949)
  • ISO-2022-KR
  • Windows-1251 (CP1251)
  • Windows-1252 (CP1252)
  • CP866 (IBM866)
  • KOI8-R*

詳細はこちらから
PHP: サポートされる文字エンコーディング

2013年12月4日水曜日

2013年12月3日火曜日

JavaScript で小数点以下で切り捨て

JavaScript で小数点以下第 N 位で切り捨てを行う関数の例です。
// 小数点以下 n 位までの数値にする
var parsePoint = function(number, n) {
    return Math.floor(number * Math.pow(10, n)) / Math.pow(10, n);
}

console.log(parsePoint(123.456, 2)); // 123.45
一旦桁を上げてから小数点以下を切り捨て、桁を戻すことで実現しています。

2013年12月2日月曜日

JavaScript で文字列が特定のフォーマットになっているかチェックする

正規表現の test() メソッドを使うとチェックできます。
var str1 = 'ABCDE';
var str2 = 'CDEFG';
/BCD/.test(str1); // true
/BCD/.test(str2); // false

2013年12月1日日曜日

jQuery でスクロール位置を取得する

scrollTop() 関数で取得できます。
ブラウザによって document や body は動作が変わるので window にバインドするのがよさそうです。
$(window).on('scroll', function() {
    console.log($(this).scrollTop()); // ピクセル数
});