/// jQuery.noConflict(); // global変数 var EC_WWW_ROOT = ''; // default charsetの設定 jQuery.ajaxSetup({ contentType: 'application/x-www-form-urlencoded; charset=utf-8' }); // util function _ecUtil() { // ダブルクリック禁止処理 this.ignoreDblClickFlag = null; // 郵便番号検索 var timerId_lookupzip_ = null; var zipcache_lookupzip_ = ''; var timerId_zipcache_ = null; // 全角半角変換 this.hanMap = {}; this.zenMap = { 'a': 'a', 'b': 'b', 'c': 'c', 'd': 'd', 'e': 'e', 'f': 'f', 'g': 'g', 'h': 'h', 'i': 'i', 'j': 'j', 'k': 'k', 'l': 'l', 'm': 'm', 'n': 'n', 'o': 'o', 'p': 'p', 'q': 'q', 'r': 'r', 's': 's', 't': 't', 'u': 'u', 'v': 'v', 'w': 'w', 'x': 'x', 'y': 'y', 'z': 'z', 'A': 'A', 'B': 'B', 'C': 'C', 'D': 'D', 'E': 'E', 'F': 'F', 'G': 'G', 'H': 'H', 'I': 'I', 'J': 'J', 'K': 'K', 'L': 'L', 'M': 'M', 'N': 'N', 'O': 'O', 'P': 'P', 'Q': 'Q', 'R': 'R', 'S': 'S', 'T': 'T', 'U': 'U', 'V':, '9': '9', '!': '!', '@': '@', '#': '#', '$': '$', '%': '%', '^': '^', '&': '&', '*': '*', '(': '(', ')': ')', '_': '_', '+': '+', '|': '|', ' ̄': '~', '-': '-', '=': '=', '¥': '\\', '`': '`', '{': '{', '}': '}', '[': '[', ']': ']', ':': ':', '”': '"', ';': ';', '’': '\'', '<': '<', '>': '>', '?': '?', ',': ',', '.': '.', '/': '/', '。': '。', '「': '「', '」': '」', '、': '、', '・': '・', 'ヲ': 'ヲ', 'ァ': 'ァ', 'ィ': 'ィ', 'ゥ': 'ゥ', 'ェ': 'ェ', 'ォ': 'ォ', 'ャ': 'ャ', 'ュ': 'ュ', 'ョ': 'ョ', 'ッ': 'ッ', 'ー': 'ー', 'ア': 'ア', 'イ': 'イ', 'ウ': 'ウ', 'エ': 'エ', 'オ': 'オ', 'カ': 'カ', 'キ': 'キ', 'ク': 'ク', 'ケ': 'ケ', 'コ': 'コ', 'サ': 'サ', 'シ': 'シ', 'ス': 'ス', 'セ': 'セ', 'ソ': 'ソ', 'タ': 'タ', 'チ': 'チ', 'ツ': 'ツ', 'テ': 'テ', 'ト': 'ト', 'ナ': 'ナ', 'ニ': 'ニ', 'ヌ': 'ヌ', 'ネ': 'ネ', 'ノ': 'ノ', 'ハ': 'ハ', 'ヒ': 'ヒ', 'フ': 'フ', 'ヘ': 'ヘ', 'ホ': 'ホ', 'マ': 'マ', 'ミ': 'ミ', 'ム': 'ム', 'メ': 'メ', 'モ': 'モ', 'ヤ': 'ヤ', 'ユ': 'ユ', 'ヨ': 'ヨ', 'ラ': 'ラ', 'リ': 'リ', 'ル': 'ル', 'レ': 'レ', 'ロ': 'ロ', 'ワ': 'ワ', 'ン': 'ン', 'ガ': 'ガ', 'ギ': 'ギ', 'グ': 'グ', 'ゲ': 'ゲ', 'ゴ': 'ゴ', 'ザ': 'ザ', 'ジ': 'ジ', 'ズ': 'ズ', 'ゼ': 'ゼ', 'ゾ': 'ゾ', 'ダ': 'ダ', 'ヂ': 'ヂ', 'ヅ': 'ヅ', 'デ': 'デ', 'ド': 'ド', 'バ': 'バ', 'パ': 'パ', 'ビ': 'ビ', 'ピ': 'ピ', 'ブ': 'ブ', 'プ': 'プ', 'ベ': 'ベ', 'ペ': 'ペ', 'ボ': 'ボ', 'ポ': 'ポ', 'ヴ': 'ヴ', '゛': '゙', '゜': '゚', ' ': ' ' }; // 半角->全角マップ for (var key in this.zenMap) { if (!this.hanMap[this.zenMap[key]]) { this.hanMap[this.zenMap[key]] = key; } } // 半角<->全角変換 this.strConvert = function(obj, isHanToZen) { if (obj.value == obj.getAttribute("title")){ return true; } var str = obj.value; var conv = ''; var map = isHanToZen ? this.hanMap : this.zenMap; for (var i = 0; i < str.length; i++) { var tmp = ''; if (i < str.length - 1) { tmp = str.substring(i, i + 2); } if (map[tmp]) { conv += map[tmp]; i++; continue; } else { tmp = str.substring(i, i + 1); conv += map[tmp] ? map[tmp] : tmp; } } obj.value = conv; return true; } // ダブルクリック(連続ポスト)の制御 this.ignoreDblClick = function() { if (this.ignoreDblClickFlag == null) { this.ignoreDblClickFlag = 1; return true; } else { return false; } } // htmlタグの置き換え this.htmlspecialchars = function(str) { if (!str || str == '') { return ''; } str = str.replace(/&/g, '&'); str = str.replace(/"/g, '"'); str = str.replace(/'/g, '''); str = str.replace(//g, '>'); return str; } // 郵便番号検索 this.lookupZipInit = function(zip, pref, addr, addr2, cnt, offset) { var defaultXOffset = 90; var timerOffset = 300; var zip_id = '#' + zip + cnt; var pref_id = '#' + pref + cnt; var addr_id = '#' + addr + cnt; var addr2_id = '#' + addr2 + cnt; offset = offset + defaultXOffset; jQuery(zip_id).bind('keyup paste', function() { jQuery('ul.ziplist_').remove(); clearTimeout(timerId_zipcache_); timerId_zipcache_ = setTimeout( function() { if (zipcache_lookupzip_ == jQuery(zip_id).val()) { zipcache_lookupzip_ = jQuery(zip_id).val(); return false; } zipcache_lookupzip_ = jQuery(zip_id).val(); }, timerOffset); clearTimeout(timerId_lookupzip_); timerId_lookupzip_ = setTimeout(function() { if (!jQuery(zip_id).val().match(/^[0-9]{3}[\-]{0,1}[0-9]{0,4}$/)) { return true; } jQuery.get('../search/lookupzipjson.aspx', { zip: jQuery(zip_id).val(), charset: 'shift_jis' }, function(data, status) { var of = jQuery(zip_id).offset(); var ul = jQuery('').addClass('ziplist_'); ul.css('top', of.top); ul.css('left', of.left + offset); var searchCount = 0; var tempzip, temppref, tempaddr, tempaddr2; jQuery.each(data, function(key, item) { searchCount++; tempzip = item.zip; temppref = item.pref; tempaddr = item.addr; tempaddr2 = item.addr2; var li = jQuery('
  • ' + key + ' ' + item.pref + ' ' + item.addr + ' ' + item.addr2 + '
  • '); li.bind('click', function() { jQuery(zip_id).val(item.zip); jQuery(pref_id).val(item.pref); jQuery(addr_id).val(item.addr + item.addr2); jQuery(addr2_id).val(""); jQuery('ul.ziplist_').remove(); jQuery(zip_id).blur(); jQuery(pref_id).change(); jQuery(addr_id).focus(); jQuery(addr2_id).blur().focus(); return false; }); li.bind('mouseover', function() { li.addClass('hover'); }); li.bind('mouseleave', function() { li.removeClass('hover'); }); ul.append(li); }); if ((searchCount == 1) && (zipcache_lookupzip_.replace("-","").length == 7)) { jQuery(zip_id).val(tempzip); jQuery(pref_id).val(temppref); jQuery(addr_id).val(tempaddr + tempaddr2); jQuery(addr2_id).val(""); jQuery('ul.ziplist_').remove(); jQuery(zip_id).blur(); jQuery(pref_id).change(); jQuery(addr_id).focus(); jQuery(addr2_id).blur().focus(); return false; } else if (searchCount != 0) { jQuery(document.body).append(ul); } }, 'json' ); }, timerOffset); }); } // 汎用入力チェック this.confirmInputCheck = function() { // メールアドレスチェック if (jQuery('#mail').size() == 1 && jQuery('#cmail').size() == 1) { if (jQuery('#mail').val() != jQuery('#cmail').val()) { alert('メールアドレスとメールアドレス(確認)が一致しません'); ecUtil.ignoreDblClickFlag = false; return false; } } // メールアドレスチェック2 if (jQuery('#newmail1').size() == 1 && jQuery('#newmail2').size() == 1) { if (jQuery('#newmail1').val() != jQuery('#newmail2').val()) { alert('メールアドレスとメールアドレス(確認)が一致しません'); ecUtil.ignoreDblClickFlag = false; return false; } } // パスワードチェック if (jQuery('#pwd').size() == 1 && jQuery('#cpwd').size() == 1) { if (jQuery('#pwd').val() != jQuery('#cpwd').val()) { alert('入力されたパスワードと確認用パスワードが一致しません'); ecUtil.ignoreDblClickFlag = false; return false; } } // パスワードチェック2 if (jQuery('#npwd1').size() == 1 && jQuery('#npwd2').size() == 1) { if (jQuery('#npwd1').val() != jQuery('#npwd2').val()) { alert('入力されたパスワードと確認用パスワードが一致しません'); ecUtil.ignoreDblClickFlag = false; return false; } } // IDチェック if (jQuery('#newid1').size() == 1 && jQuery('#newid2').size() == 1) { if (jQuery('#newid1').val() != jQuery('#newid2').val()) { alert('入力されたIDと確認用IDが一致しません'); ecUtil.ignoreDblClickFlag = false; return false; } } // IDとPASSの不一致確認 if (jQuery('#uid').size() == 1 && jQuery('#pwd').size() == 1) { if (jQuery('#uid').val() != "" && jQuery('#pwd').val() != "" ) { if (jQuery('#uid').val() == jQuery('#pwd').val()) { alert('会員IDとパスワードは別々のものを指定してください'); jQuery('#pwd').val(''); jQuery('#cpwd').val(''); ecUtil.ignoreDblClickFlag = false; return false; } } } return true; } // 名前の高さを行ごとにそろえる this.tileGoodsList = function() { // 二重実行の防止 var excuteKey = "goods_list_tiled"; var tiled = jQuery(document).data(excuteKey); if (tiled) return; jQuery(document).data(excuteKey , true); // 対象のセレクタ var frameSelector = ".tile_frame_"; // 一覧を包むフレーム var lineSelector = ".tile_line_"; // 行 var itemSelector = ".tile_item_"; // 個々の商品 var elmSelector = ".tile_elm_"; // 高さを合わせる要素 // 一覧を包むフレームが見つからない場合は、処理を終了 var frames = jQuery(frameSelector); if (frames.length < 1) return; frames.each(function() { // 対象の一覧 var frame = jQuery(this); // 列の数を取得 var maxColumn = frame.find(lineSelector + ":first").children(itemSelector).size(); // 指定要素の高さを揃える if (maxColumn && maxColumn > 1) frame.find(elmSelector).tile(maxColumn); }); } } var ecUtil = new _ecUtil();