Created
September 23, 2013 06:13
-
-
Save justqyx/6666962 to your computer and use it in GitHub Desktop.
值得学习的 JS
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var _hmt = _hmt || []; | |
$.ajaxSetup({ | |
global: false, | |
type: 'POST', | |
dataType: 'json' | |
}); | |
(function($) { | |
$.extend({ | |
mask: { | |
open: function(options) { | |
var settings = $.extend({ | |
title: '测试标题', | |
main: 'mask测试内容', | |
width: '530px', | |
close: function() { | |
$.mask.close(); | |
} | |
}, options); | |
$('body').append('<div id="mask_bg">' + '</div>' + '<div id="mask_wrap">' + '<div id="mask_header" style="width:' + settings.width + ';">' + '<span id="msak_title">' + settings.title + '</span>' + '<a id="mask_close" class="js_mask_close" href="javascript:;"></a>' + '</div>' + '<div id="mask_main">' + settings.main + '</div>' + '</div>'); | |
$('.js_mask_close').click(settings.close); | |
$(window).resize(this.position).resize(); | |
$(document).one('keyup', function(e) { | |
if (e.keyCode == 27) { | |
settings.close(); | |
}; | |
}); | |
}, | |
close: function() { | |
$('#mask_bg').remove(); | |
$('#mask_wrap').remove(); | |
}, | |
position: function() { | |
var obj = $('#mask_wrap'); | |
obj.width($('#mask_content').width()); | |
$('#mask_bg').height($('body').height()); | |
obj.css({ | |
'left': (document.documentElement.clientWidth - obj.width()) / 2, | |
'top': $(document).scrollTop() + (document.documentElement.clientHeight - obj.height()) / 2 | |
}); | |
} | |
}, | |
prompt: { | |
loading: function(layout, change) { | |
var clone = layout.clone(true); | |
return { | |
start: function() { | |
layout.replaceWith(change); | |
}, | |
end: function() { | |
change.replaceWith(clone); | |
} | |
}; | |
}, | |
auto: function(text) { | |
$('.js_prompt_auto').remove(); | |
var obj = $('<span class="js_prompt_auto" style="position: fixed; z-index:9999; display: inline-block; background: #f7ed9f; border: 1px solid #fdceb0; height: 40px; line-height: 40px; padding: 0 10px; color: #625a1a;">' + text + '</span>'); | |
$('body').append(obj); | |
obj.css({ | |
'left': (document.documentElement.clientWidth - obj.width()) / 2, | |
'top': 85 | |
}); | |
setTimeout(function() { | |
obj.fadeOut(500); | |
}, 5000); | |
}, | |
confirm: function(obj, text, callback) { | |
var _obj = $('<div class="mask_card_wrap mask_card_confirm"><div class="mask_card_icon"></div><div class="mask_card"><div class="mask_card_confirm_text">' + text + '</div><div class="mask_card_confirm_opera"><a class="link1 f12 js_mask_confirm_cancel" href="javascript:;">取消</a><a class="button5 ml5 js_mask_confirm_ok" href="javascript:;">确定</a></div></div></div>'); | |
var set = { | |
width: obj.width(), | |
height: obj.height(), | |
top: obj.offset().top, | |
left: obj.offset().left, | |
scroll: $(document).scrollTop(), | |
position: function() { | |
if (set.top - $('.mask_card_confirm').height() > set.scroll + 70) { | |
$('.mask_card_confirm').css({ | |
'z-index': 999, | |
'left': set.left - obj.width() / 2, | |
'top': set.top - $('.mask_card_confirm').height() - 10 | |
}).addClass('bottom'); | |
} else { | |
$('.mask_card_confirm').css({ | |
'z-index': 999, | |
'left': set.left - obj.width() / 2, | |
'top': set.top + set.height + 10 | |
}).addClass('top'); | |
} | |
$('.mask_card_icon').css({ | |
'left': obj.width() - 6 | |
}); | |
} | |
}; | |
$('.mask_card_confirm').remove(); | |
$('body').append(_obj); | |
set.position(); | |
$('.js_mask_confirm_cancel').one('click', function() { | |
_obj.remove(); | |
}); | |
$('.js_mask_confirm_ok').one('click', function() { | |
if ($.isFunction(callback)) { | |
callback(obj); | |
_obj.remove(); | |
} | |
}); | |
} | |
} | |
}); | |
})($); | |
(function($) { | |
$.fn.textSearch = function(str, options) { | |
var defaults = { | |
divFlag: true, | |
divStr: " ", | |
markClass: "", | |
markColor: "red", | |
nullReport: true, | |
callback: function() { | |
return false; | |
} | |
}; | |
var sets = $.extend({}, defaults, options || {}), | |
clStr; | |
if (sets.markClass) { | |
clStr = "class='" + sets.markClass + "'"; | |
} else { | |
clStr = "style='color:" + sets.markColor + ";'"; | |
} | |
//对前一次高亮处理的文字还原 | |
$("span[rel='mark']").each(function() { | |
var text = document.createTextNode($(this).text()); | |
$(this).replaceWith($(text)); | |
}); | |
//字符串正则表达式关键字转化 | |
$.regTrim = function(s) { | |
var imp = /[\^\.\\\|\(\)\*\+\-\$\[\]\?]/g; | |
var imp_c = {}; | |
imp_c["^"] = "\\^"; | |
imp_c["."] = "\\."; | |
imp_c["\\"] = "\\\\"; | |
imp_c["|"] = "\\|"; | |
imp_c["("] = "\\("; | |
imp_c[")"] = "\\)"; | |
imp_c["*"] = "\\*"; | |
imp_c["+"] = "\\+"; | |
imp_c["-"] = "\\-"; | |
imp_c["$"] = "\$"; | |
imp_c["["] = "\\["; | |
imp_c["]"] = "\\]"; | |
imp_c["?"] = "\\?"; | |
s = s.replace(imp, function(o) { | |
return imp_c[o]; | |
}); | |
return s; | |
}; | |
$(this).each(function() { | |
var t = $(this); | |
str = $.trim(str); | |
if (str === "") { | |
//alert("关键字为空"); | |
return false; | |
} else { | |
//将关键字push到数组之中 | |
var arr = []; | |
if (sets.divFlag) { | |
arr = str.split(sets.divStr); | |
} else { | |
arr.push(str); | |
} | |
} | |
var v_html = t.html(); | |
//删除注释 | |
v_html = v_html.replace(/<!--(?:.*)\-->/g, ""); | |
//将HTML代码支离为HTML片段和文字片段,其中文字片段用于正则替换处理,而HTML片段置之不理 | |
var tags = /[^<>]+|<(\/?)([A-Za-z]+)([^<>]*)>/g; | |
var a = v_html.match(tags), | |
test = 0; | |
$.each(a, function(i, c) { | |
if (!/<(?:.|\s)*?>/.test(c)) { //非标签 | |
//开始执行替换 | |
$.each(arr, function(index, con) { | |
if (con === "") { | |
return; | |
} | |
var reg = new RegExp($.regTrim(con), "g"); | |
if (reg.test(c)) { | |
//正则替换 | |
c = c.replace(reg, "♂" + con + "♀"); | |
test = 1; | |
} | |
}); | |
c = c.replace(/♂/g, "<span rel='mark' " + clStr + ">").replace(/♀/g, "</span>"); | |
a[i] = c; | |
} | |
}); | |
//将支离数组重新组成字符串 | |
var new_html = a.join(""); | |
$(this).html(new_html); | |
if (test === 0 && sets.nullReport) { | |
//alert("没有搜索结果"); | |
return false; | |
} | |
//执行回调函数 | |
sets.callback(); | |
}); | |
}; | |
})(jQuery); | |
var Common = { | |
ajax: function(options) { | |
var defaultValue = { | |
type: 'POST', | |
url: '', | |
data: '', | |
dataType: 'json', | |
context: $(document), | |
beforeSend: function(obj) {}, | |
success: function(data, obj) {}, | |
complete: function(obj) {} | |
}; | |
var setting = $.extend(defaultValue, options); | |
if (!setting.context.data('flag')) { | |
setting.context.data({ | |
'flag': 'true' | |
}); | |
} | |
if (setting.context.data('flag') == 'true') { | |
$.ajax({ | |
type: setting.type, | |
url: Config['defaultUrl'] + setting.url, | |
data: setting.data, | |
dataType: setting.dataType, | |
context: setting.context, | |
beforeSend: function() { | |
setting.context.data({ | |
'flag': 'false' | |
}); | |
setting.beforeSend($(this)); | |
}, | |
success: function(data) { | |
setting.success(data, $(this)); | |
}, | |
complete: function() { | |
setting.context.data({ | |
'flag': 'true' | |
}); | |
setting.complete($(this)); | |
} | |
}); | |
} | |
}, | |
layout: function(title, url, data) { | |
Common.ajax({ | |
url: url, | |
data: data, | |
success: function(data, obj) { | |
$.mask.open({ | |
title: title, | |
main: data['data'] | |
}); | |
} | |
}); | |
}, | |
getValue: function(text) { | |
var json = {}; | |
var dom = $(text); | |
dom.each(function(i) { | |
var obj = dom.eq(i); | |
if (obj.attr('data-default-value') != dom.eq(i).val()) { | |
json[obj.attr('name')] = obj.val(); | |
} else { | |
json[obj.attr('name')] = ''; | |
}; | |
}); | |
return json; | |
}, | |
searchTag: function(options, fn) { | |
$(document) | |
.on('keyup', '.js_search_tag', function(e) { | |
var data = Common.getValue('.js_default_value'); | |
data['notin'] = new Array(); | |
var notin = $('.js_tag_added'); | |
for (var i = 0; i < notin.length; i++) { | |
data['notin'][i] = notin.eq(i).attr('data-tag-id'); | |
}; | |
data['levelin'] = options['levelin']; | |
data['limitnum'] = options['limitnum']; | |
data['pagenum'] = options['pagenum']; | |
var obj = $(this); | |
if (data['code'] != '' && e.keyCode != 38 && e.keyCode != 40 && e.keyCode != 13) { | |
$.ajax({ | |
url: Config['defaultUrl'] + '/Tool/tool_search_stock_a', | |
data: data, | |
context: $(this), | |
success: function(data) { | |
if (data['status'] == 1) { | |
var html = ''; | |
for (var k in data['data']) { | |
html += '<a href="javascript:;" data-tag-num="' + data['data'][k]['shownumberb'] + data['data'][k]['shownumber'] + '" data-tag-id="' + data['data'][k]['idstock'] + '" data-tag-name="' + data['data'][k]['showname'] + '" class="search_tag_result_list">' + data['data'][k]['showname'] + '(' + data['data'][k]['shownumberb'] + data['data'][k]['shownumber'] + ')</a>'; | |
} | |
$(this).siblings('.search_tag_result').html(html).show(); | |
$('.search_tag_result_list') | |
.off('click') | |
.on('click', function() { | |
fn($(this)); | |
obj.val('').blur(); | |
}).on('mouseover', function() { | |
$('.search_tag_result_list').removeClass('hover'); | |
$(this).addClass('hover'); | |
}).on('mouseout', function() { | |
$(this).removeClass('hover'); | |
}).eq(0).mouseover(); | |
} else { | |
$(this).siblings('.search_tag_result').html('<div class="pl20 pr20">' + data['info'] + '</div>').show(); | |
} | |
} | |
}); | |
} else if (data['code'] == '') { | |
$(this).siblings('.search_tag_result').html(' ').hide(); | |
$(this).val(''); | |
$('.js_rec_name').html(' '); | |
$('.js_rec_now').html(' ').attr('data-stock-id', ''); | |
$('.js_rec_price').val('').blur(); | |
} else if (e.keyCode == 38) { | |
var ind = $('.search_tag_result_list.hover').index(); | |
if (ind == 0) { | |
$('.search_tag_result_list').eq($('.search_tag_result_list').length - 1).mouseover(); | |
} else { | |
$('.search_tag_result_list').eq(ind - 1).mouseover(); | |
}; | |
} else if (e.keyCode == 40) { | |
var ind = $('.search_tag_result_list.hover').index(); | |
if (ind == $('.search_tag_result_list').length - 1) { | |
$('.search_tag_result_list').eq(0).mouseover(); | |
} else { | |
$('.search_tag_result_list').eq(ind + 1).mouseover(); | |
}; | |
} else if (e.keyCode == 13) { | |
$('.search_tag_result_list.hover').click(); | |
}; | |
}) | |
.on('click', '.tag_del', function() { | |
$(this).parent('.js_tag_added').remove(); | |
}); | |
}, | |
toDecimal2: function(x) { | |
var f = parseFloat(x); | |
if (isNaN(f)) { | |
return false; | |
} | |
var f = Math.round(x * 100) / 100; | |
var s = f.toString(); | |
var rs = s.indexOf('.'); | |
if (rs < 0) { | |
rs = s.length; | |
s += '.'; | |
} | |
while (s.length <= rs + 2) { | |
s += '0'; | |
} | |
return s; | |
}, | |
page: function(options) { | |
var set = { | |
table: options.table, | |
num: options.prev.attr('data-num-min'), | |
min: options.prev.attr('data-num-min'), | |
max: options.next.attr('data-num-max'), | |
callback: options.callback, | |
size: function() { | |
if (set.num <= set.min) { | |
options.prev.addClass('ban'); | |
} else { | |
options.prev.removeClass('ban'); | |
} | |
if (set.num >= set.max) { | |
options.next.addClass('ban'); | |
} else { | |
options.next.removeClass('ban'); | |
} | |
} | |
}; | |
set.size(); | |
options.prev.click(function() { | |
if (!$(this).hasClass('ban')) { | |
set.num--; | |
set.callback($(this), { | |
'table': set.table, | |
'start': set.num | |
}); | |
set.size(); | |
} | |
}); | |
options.next.click(function() { | |
if (!$(this).hasClass('ban')) { | |
set.num++; | |
set.callback($(this), { | |
'table': set.table, | |
'start': set.num | |
}); | |
set.size(); | |
} | |
}); | |
}, | |
cutStr: function(str, len) { | |
var l = 0; | |
for (var i = 0; i < str.length; i++) { | |
var strTemp = str.charAt(i); | |
if (strTemp.match(/[\x00-\x80]/)) { | |
l += 1; | |
} else { | |
l += 2; | |
}; | |
}; | |
if (l > len) { | |
return false; | |
} else { | |
return true; | |
} | |
}, | |
contains: function(arr, text) { | |
for (var i = 0; i < arr.length; i++) { | |
if (arr[i] == text) { | |
return true; | |
}; | |
}; | |
return false; | |
}, | |
upload: function(options) { | |
options.object.html('<div style="position: relative; background:#4D90FE ; width: 80px; border-radius: 3px;"><div style="color: #fff; height: 35px; line-height: 35px; border-radius: 3px; text-align: center;">上传文件</div><div style="overflow: hidden; position: absolute; top: 0; width: 80px; height: 35px; left: 0;"><form method="post" target="' + options.target + '" action="' + options.action + '" enctype="multipart/form-data"><input name="' + options.name + '" id="' + options.uploadpdf + '" type="file" onchange="this.parentNode.submit();" style="height: 35px; cursor: pointer; -moz-opacity:0;opacity:0;filter:alpha(opacity=0); position: absolute; left: -140px; "/></form></div><iframe name="' + options.target + '" width="0" height="0" frameborder="0" src="about:blank"></iframe></div>'); | |
return $('#' + options.uploadpdf); | |
}, | |
stringToJson: function(text) { | |
var data = {}, arr = text.split('&'), | |
i = 0, | |
j = 0; | |
for (; i < arr.length; i++) { | |
var _arr = arr[i].split('='); | |
if (_arr[1].indexOf(',') >= 0) { | |
var __arr = _arr[1].split(','); | |
data[_arr[0]] = []; | |
for (; j < __arr.length; j++) { | |
data[_arr[0]].push(__arr[j]); | |
}; | |
} else { | |
data[_arr[0]] = _arr[1]; | |
} | |
} | |
return data; | |
}, | |
spell: function(obj1, obj2) { | |
var data = {}; | |
for (var k in obj1) { | |
data[k] = obj1[k]; | |
} | |
for (var k in obj2) { | |
data[k] = obj2[k]; | |
} | |
return data; | |
}, | |
moreSelect: function(options) { | |
var defaultValue = { | |
obj: '', //外层包裹对象 | |
title: {}, //默认title | |
data: {}, //选择数据 | |
flag: false, //是否有默认值 | |
disabled: false //是否禁用 | |
}; | |
var setting = $.extend(defaultValue, options); | |
var html = '', | |
list = ''; | |
for (var k in setting.data) { | |
list += '<li><label for="' + setting.data[k] + '"><input type="checkbox" id="' + setting.data[k] + '" value="' + k + '" />' + setting.data[k] + '</label></li>'; | |
} | |
html = '<div class="common_select common_select_more" data-select-value=""><div class="common_select_show"><div class="common_select_text">' + setting.title + '</div><a class="common_select_button" href="javascript:;"></a></div><ul class="common_select_list">' + list + '</ul></div>'; | |
$(setting.obj).html(html); | |
var $li = $(setting.obj + ' li'), | |
$input = $(setting.obj + ' li input'), | |
$label = $(setting.obj + ' li label'), | |
$show = $(setting.obj + ' .common_select_show'), | |
$text = $(setting.obj + ' .common_select_text'), | |
$sel = $(setting.obj + ' .common_select'), | |
$list = $(setting.obj + ' .common_select_list'); | |
$show.click(function(e) { | |
if (setting.disabled == false) { | |
var obj = $(this).siblings('.common_select_list'); | |
if (obj.is(':visible')) { | |
obj.hide(); | |
} else { | |
$('.common_select_list').hide(); | |
obj.show(); | |
$(document).click(function(e) { | |
var flag = true; | |
for (var i = 0; i < $li.length; i++) { | |
if ($li.eq(i)[0] == e.target || $input.eq(i)[0] == e.target || $label.eq(i)[0] == e.target) { | |
flag = false; | |
} | |
} | |
if (flag == true) { | |
obj.hide(); | |
} | |
}); | |
e.stopPropagation(); | |
} | |
} | |
}); | |
$input.change(function() { | |
var check = $(setting.obj + ' li input:checked'), | |
len = check.length, | |
textArr = [], | |
idArr = []; | |
for (var i = 0; i < len; i++) { | |
textArr.push(check.eq(i).attr('id')); | |
idArr.push(check.eq(i).val()); | |
} | |
if (len == 0) { | |
$text.html(setting.title).removeClass('select'); | |
$sel.data({ | |
'value': null | |
}); | |
} else { | |
$text.html(textArr.join(',')).addClass('select'); | |
$sel.data({ | |
'value': idArr.join(',') | |
}); | |
} | |
}); | |
return function() { | |
if ($sel.data('value')) { | |
return $sel.data('value').split(','); | |
} else { | |
return ''; | |
} | |
}; | |
}, | |
select: function(options) { | |
var defaultValue = { | |
obj: '', //外层包裹对象 | |
show: {}, //显示title数据(默认显示) | |
data: {}, //选择数据 | |
flag: false, //是否有默认值 | |
disabled: false, //是否禁用 | |
fn: function(obj) {} //选择列表时执行的回调函数 | |
}; | |
var setting = $.extend(defaultValue, options); | |
var html = '', | |
list = ''; | |
if (setting.show['exit'] && setting.show['title']) { | |
list = '<li><a data-select-value="" href="javascript:;">' + setting.show['exit'] + '</a></li>'; | |
for (var k in setting.data) { | |
list += '<li><a data-select-value="' + k + '" href="javascript:;">' + setting.data[k] + '</a></li>' | |
} | |
html = '<div class="common_select" data-select-value=""><div class="common_select_show"><div class="common_select_text">' + setting.show['title'] + '</div><a class="common_select_button" href="javascript:;"></a></div><ul class="common_select_list">' + list + '</ul></div>'; | |
} else { | |
var cl0 = '', | |
cl1 = ''; | |
if (setting.flag == false) { | |
cl1 = 'dis'; | |
} else { | |
cl0 = 'select'; | |
} | |
for (var k in setting.data) { | |
list += '<li><a data-select-value="' + k + '" href="javascript:;">' + setting.data[k] + '</a></li>' | |
} | |
for (var k in setting.show) { | |
html = '<div class="common_select" data-select-value="' + k + '"><div class="common_select_show"><div class="common_select_text ' + cl0 + '">' + setting.show[k] + '</div><a class="common_select_button ' + cl1 + '" href="javascript:;"></a></div><ul class="common_select_list">' + list + '</ul></div>' | |
} | |
} | |
$(setting.obj).html(html); | |
var $li = $(setting.obj + ' li'), | |
$show = $(setting.obj + ' .common_select_show'), | |
$a = $(setting.obj + ' li a'), | |
$text = $(setting.obj + ' .common_select_text'), | |
$sel = $(setting.obj + ' .common_select'), | |
$list = $(setting.obj + ' .common_select_list'); | |
$li.eq(0).hide(); | |
$show.click(function(e) { | |
if (setting.disabled == false) { | |
var obj = $(this).siblings('.common_select_list'); | |
if (obj.is(':visible')) { | |
obj.hide(); | |
} else { | |
$('.common_select_list').hide(); | |
obj.show(); | |
$(document).click(function(e) { | |
var flag = true; | |
for (var i = 0; i < $a.length; i++) { | |
if ($a.eq(i)[0] == e.target) { | |
flag = false; | |
} | |
} | |
if (flag == true) { | |
obj.hide(); | |
} | |
}); | |
e.stopPropagation(); | |
} | |
} | |
}); | |
$a.click(function() { | |
if (setting.show['title'] && $(this).parent('li').index() == 0) { | |
$text.removeClass('select'); | |
$text.html(setting.show['title']); | |
} else { | |
$text.addClass('select'); | |
$text.html($(this).html()); | |
} | |
$li.show(); | |
$(this).parent('li').hide(); | |
$sel.attr('data-select-value', $(this).attr('data-select-value')); | |
$list.hide(); | |
if (setting.fn) { | |
setting.fn($(this)); | |
} | |
}); | |
return function() { | |
return $sel.attr('data-select-value'); | |
}; | |
}, | |
tag: function(options) { | |
var stock = '', | |
delStock = function() { | |
$(options.obj + ' .common_tag_del').click(function() { | |
$(this).parent('span').remove(); | |
$(options.obj + ' input').val('').focus(); | |
}); | |
}; | |
for (var k in options.stock) { | |
stock += '<span class="common_tag" data-tag-id="' + k + '"><a class="common_tag_name">' + options.stock[k] + '</a><a href="javascript:;" class="common_tag_del">×</a></span>' | |
}; | |
$(options.obj).html('<div class="common_tag_wrap clearfix">' + stock + '<div class="common_tag_search"><input class="js_default_value" type="text" name="' + options.name + '" value="' + options.defaultValue + '" data-default-value="' + options.defaultValue + '" /><div class="common_tag_list"></div></div></div>'); | |
$('.common_tag_search input').keyup(function(e) { | |
var val = $(this).val(); | |
options.data['notin'] = new Array(); | |
var notin = $(options.obj + ' .common_tag_wrap').children('span'); | |
for (var i = 0; i < notin.length; i++) { | |
options.data['notin'][i] = notin.eq(i).attr('data-tag-id'); | |
}; | |
if (val != '' && e.keyCode != 38 && e.keyCode != 40 && e.keyCode != 13) { | |
options.data[$(this).attr('name')] = val; | |
Common.ajax({ | |
url: options.url, | |
data: options.data, | |
context: $(this), | |
success: function(data, obj) { | |
if (data['status'] == 1) { | |
obj.siblings('.common_tag_list').html(options.html(data)).show(); | |
$(options.obj + ' .common_tag_list a').click(function() { | |
if ($(options.obj + ' .common_tag_wrap span').length >= options.length) { | |
$.prompt.auto('最多添加' + options.length + '个'); | |
} else { | |
$(options.obj + ' .common_tag_search').before('<span data-tag-id="' + $(this).attr('data-tag-id') + '" class="common_tag"><a class="common_tag_name">' + $(this).attr('data-tag-name') + '</a><a class="common_tag_del" href="javascript:;">×</a></span>'); | |
} | |
$(options.obj + ' .common_tag_list').html('').hide(); | |
$(options.obj + ' input').val('').focus(); | |
delStock(); | |
}).mouseover(function() { | |
$(this).addClass('hover').siblings('a').removeClass('hover'); | |
}); | |
$(options.obj + ' .common_tag_list a:first').mouseover(); | |
} else { | |
obj.siblings('.common_tag_list').html('<div class="pl20 pr20">' + data['info'] + '</div>').show(); | |
} | |
} | |
}); | |
} else if (val == '') { | |
$(this).siblings('.common_tag_list').html('').hide(); | |
$(this).val(''); | |
} else if (e.keyCode == 38) { | |
var objHover = $(options.obj + ' .common_tag_list a.hover').index(); | |
if (objHover == 0) { | |
$(options.obj + ' .common_tag_list a:last').mouseover().siblings('a').mouseout(); | |
} else { | |
$(options.obj + ' .common_tag_list a').eq(objHover - 1).mouseover().siblings('a').mouseout(); | |
} | |
} else if (e.keyCode == 40) { | |
var objHover = $(options.obj + ' .common_tag_list a.hover').index(); | |
var obj = $(options.obj + ' .common_tag_list a'); | |
if (objHover == obj.length - 1) { | |
$(options.obj + ' .common_tag_list a:first').mouseover().siblings('a').mouseout(); | |
} else { | |
$(options.obj + ' .common_tag_list a').eq(objHover + 1).mouseover().siblings('a').mouseout(); | |
} | |
} else if (e.keyCode == 13) { | |
$(options.obj + ' .common_tag_list a.hover').click(); | |
} | |
}).keydown(function(e) { | |
if (e.keyCode == 8 && $(this).val() == '') { | |
var notin = $(options.obj + ' .common_tag_wrap').children('span'); | |
notin.eq(notin.length - 1).remove(); | |
} | |
}); | |
delStock(); | |
return function() { | |
var arr = []; | |
var notin = $(options.obj + ' .common_tag_wrap').children('span'); | |
for (var i = 0; i < notin.length; i++) { | |
arr.push(notin.eq(i).attr('data-tag-id')); | |
}; | |
return arr; | |
} | |
}, | |
checkbox: function(obj) { | |
return function() { | |
var arr = []; | |
var inp = $(obj + ' input'); | |
for (var i = 0; i < inp.length; i++) { | |
if (inp.eq(i)[0].checked) { | |
arr.push(inp.eq(i).val()); | |
} | |
} | |
return arr; | |
} | |
}, | |
sina: function(obj, cl) { | |
$(obj).html('<span class="fl" style="margin-top: 2px;">同时分享到微博</span><a class="share_sina_icon ' + cl + ' fl" href="javascript:;"></a><form id="form" action="' + Config['defaultUrl'] + '/Pointview/sinadev_a" style="display: none;" method="get" target="_blank"></form>') | |
$('.share_sina_icon').click(function() { | |
Common.ajax({ | |
url: '/Pointview/if_sinadev_a', | |
success: function(data, obj) { | |
if (data['status'] == 1) { | |
if ($('.share_sina_icon').hasClass('select')) { | |
$('.share_sina_icon').removeClass('select'); | |
} else { | |
$('.share_sina_icon').addClass('select'); | |
} | |
} else { | |
$('#form').submit(); | |
} | |
} | |
}); | |
}); | |
return function() { | |
if ($('.share_sina_icon').hasClass('select')) { | |
return 1; | |
} else { | |
return 0; | |
} | |
} | |
}, | |
isEmail: function(text) { | |
return /^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/.test(text); | |
}, | |
api: function(url) { | |
window.open(url, null, 'height=500, width=600'); | |
} | |
}; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment