2296 lines
107 KiB
JavaScript
2296 lines
107 KiB
JavaScript
var tools = {
|
||
clear: function (array) {
|
||
for (var i = 0; i < array.length; i++) {
|
||
if (array[i]) {
|
||
array[i].value = '';
|
||
$(array[i]).siblings("b").show();
|
||
}
|
||
}
|
||
},
|
||
cssdesigner: function () {
|
||
$(".cornerIco").click(function () {
|
||
var obj = $(this).parents('ul');
|
||
if (obj.find('.Csspad-widthEven').hasClass("autohide")) {
|
||
obj.find('.Csspad-widthEven').removeClass('autohide');
|
||
obj.find('.Csspad-widthOdd').addClass('autohide');
|
||
$(this).addClass("cornerIco-open").removeClass("cornerIco");
|
||
} else {
|
||
obj.find('.Csspad-widthEven').addClass('autohide');
|
||
obj.find('.Csspad-widthOdd').removeClass('autohide');
|
||
$(this).addClass("cornerIco").removeClass("cornerIco-open");
|
||
}
|
||
});
|
||
$("p.Typeleft a").click(function () {
|
||
var index = $(this).index();
|
||
$(this).addClass("TyLcurt").siblings().removeClass("TyLcurt");
|
||
$("div.CssheadBoot div.QrCSSDesignerPad:eq(" + index + ")").removeClass("autohide").siblings().addClass("autohide");
|
||
});
|
||
},
|
||
htmlcheck: function () {
|
||
$("li.errorline a").click(function () {
|
||
var line = $(this).attr("line");
|
||
var htmltext = $('#htmltext');
|
||
htmltext.focus();
|
||
var linepos = htmltext.val().indexOf(line);
|
||
SelectRange(htmltext[0], linepos, linepos);
|
||
});
|
||
},
|
||
pagecode: function () {
|
||
$("div.TabheadWrap a").click(function () {
|
||
$(this).addClass("Tabon").siblings().removeClass("Tabon");
|
||
$("#codecolor").val($(this).attr("val"));
|
||
$("form").submit();
|
||
});
|
||
},
|
||
webdebugger: {
|
||
Webtest: function () {
|
||
var win = window.open();
|
||
win.document.open();
|
||
win.document.write($('#content').val());
|
||
win.document.close();
|
||
},
|
||
saveCode: function () {
|
||
if (!document.all) {
|
||
alert('此功能在IE有效');
|
||
return;
|
||
}
|
||
var win = window.open('', '', 'top=10000,left=10000');
|
||
win.document.write(document.all.content.innerText)
|
||
win.document.execCommand('SaveAs', '', '文件名称.htm')
|
||
win.close();
|
||
},
|
||
init: function () {
|
||
var _this = this;
|
||
$("#test").click(function () {
|
||
_this.Webtest();
|
||
});
|
||
$("#select").click(function () {
|
||
$("#content").select();
|
||
});
|
||
$("#clear").click(function () {
|
||
$("#content").val("");
|
||
});
|
||
$("#save").click(function () {
|
||
_this.saveCode();
|
||
});
|
||
}
|
||
},
|
||
htmlfilter: {
|
||
fhtml: true,
|
||
fjs: false,
|
||
fcss: false,
|
||
fself: false,
|
||
Filter: function () {
|
||
var s = jQuery("#content").val();
|
||
if (!this.fhtml && !this.fjs && !this.fcss && !this.fself)
|
||
this.fhtml = true;
|
||
if (this.fjs)
|
||
s = s.replace(/<\s*script[^>]*>(.|[\r\n])*?<\s*\/script[^>]*>/gi, '');
|
||
if (this.fcss)
|
||
s = s.replace(/<\s*style[^>]*>(.|[\r\n])*?<\s*\/style[^>]*>/gi, '');
|
||
if (this.fhtml) {
|
||
s = s.replace(/<\/?[^>]+>/g, '');
|
||
s = s.replace(/\&[a-z]+;/gi, '');
|
||
s = s.replace(/\s+/g, '\n');
|
||
}
|
||
if (this.fself)
|
||
s = s.replace(new RegExp(jQuery("#preplace").val(), 'g'), $("#nextplace").val());
|
||
jQuery("#result").val(s).removeClass("col-gray");
|
||
},
|
||
checked: function (obj) {
|
||
var thisv = jQuery(obj).val();
|
||
var set = jQuery(obj).prop("checked");
|
||
if (thisv == 3) {
|
||
if (set) {
|
||
this.fhtml = false;
|
||
this.fjs = false;
|
||
this.fcss = false;
|
||
this.fself = true;
|
||
jQuery(obj).siblings("[name=type]").prop("checked", false);
|
||
jQuery("#place").removeClass("autohide");
|
||
}
|
||
else {
|
||
this.fhtml = true;
|
||
this.fself = false;
|
||
jQuery("#place").addClass("autohide");
|
||
jQuery("input[name=type]").eq(1).prop("checked", true);
|
||
}
|
||
}
|
||
else {
|
||
jQuery("#place").addClass("autohide");
|
||
jQuery("input[name=type]").eq(0).prop("checked", false);
|
||
switch (thisv) {
|
||
case "0": if (set) { this.fhtml = true; this.fself = false; } else { this.fhtml = false; } break;
|
||
case "1": if (set) { this.fjs = true; this.fself = false; } else { this.fjs = false; } break;
|
||
case "2": if (set) { this.fcss = true; this.fself = false; } else { this.fcss = false; } break;
|
||
}
|
||
var _this = this;
|
||
_this.Filter();
|
||
}
|
||
},
|
||
init: function (path) {
|
||
var _this = this;
|
||
jQuery("input[name=type]").bind("click", function () {
|
||
_this.checked(this);
|
||
});
|
||
jQuery("#filter").click(function () {
|
||
_this.Filter();
|
||
jQuery("#result").siblings(".CentHid").hide();
|
||
});
|
||
jQuery("#clear").click(function () {
|
||
jQuery("#content").val("");
|
||
jQuery("#result").val("");
|
||
});
|
||
tools.clipfn(path);
|
||
}
|
||
},
|
||
clipfn: function (path, id) {
|
||
var _clip = "clip";
|
||
if (id) _clip = id;
|
||
var clip = new ZeroClipboard(getid(_clip), {
|
||
moviePath: "/template/default/images/tool/ZeroClipboard.swf"
|
||
});
|
||
clip.on('complete', function (client, args) {
|
||
alert("已成功复制到剪贴板!");
|
||
});
|
||
},
|
||
checkbox: function (t) {
|
||
$(".js-FilterItem li").click(function (e) {
|
||
if (!$(this).hasClass("selected")) {
|
||
$(this).addClass("selected");
|
||
fn(this);
|
||
} else {
|
||
$(this).removeClass("selected");
|
||
fn(this);
|
||
}
|
||
});
|
||
function fn(obj) {
|
||
if (t == "reg") {
|
||
var index = $(obj).index();
|
||
if (index == 5) {
|
||
$("#chkboxhide input").eq(6).prop("checkbox", false).removeAttr("checked");
|
||
$("#_chkboxhide li").eq(6).removeClass("selected");
|
||
} else if (index == 6) {
|
||
$("#chkboxhide input").eq(5).prop("checkbox", false).removeAttr("checked");
|
||
$("#_chkboxhide li").eq(5).removeClass("selected");
|
||
}
|
||
$("#chkboxhide input").eq(index).click();
|
||
}
|
||
else
|
||
if ($(obj).find("input").val()) $(obj).find("input").val(""); else $(obj).find("input").val($(obj).attr("val"));
|
||
}
|
||
},
|
||
openweb: {
|
||
openAttr: function (istest) {
|
||
var address = $("input[name='url']").val();
|
||
var op_tool = $("input[name='tool']").val() ? "toolbar=yes," : "";
|
||
var op_loc = $("input[name='loc']").val() ? "location=yes," : "";
|
||
var op_stat = $("input[name='stat']").val() ? "status=yes," : "";
|
||
var op_menu = $("input[name='menu']").val() ? "menubar=yes," : "";
|
||
var op_scroll = $("input[name='scroll']").val() ? "scrollbars=yes," : "";
|
||
var op_resize = $("input[name='resize']").val() ? "resizable=yes," : "";
|
||
var op_selfopen = $("input[name='selfopen']").val() ? "_self" : "newwindow";
|
||
var op_width = $("input[name='width']").val() ? "width=" + $("input[name='width']").val() + "," : "";
|
||
var op_height = $("input[name='height']").val() ? "height=" + $("input[name='height']").val() + "," : "";
|
||
var op_L = $("input[name='L']").val() ? "left=" + $("input[name='L']").val() + "," : "";
|
||
var op_T = $("input[name='T']").val() ? "top=" + $("input[name='T']").val() + "," : "";
|
||
if (op_tool == "" && op_loc == "" && op_stat == "" && op_menu == "" && op_scroll == "" && op_resize == "" && op_width == "" && op_height == "" && op_L == "" && op_T == "") {
|
||
tempopenstyle = "";
|
||
} else {
|
||
tempopenstyle = op_width + op_height + op_L + op_T + op_tool + op_loc + op_stat + op_menu + op_scroll + op_resize;
|
||
tempopenstyle = tempopenstyle.substring(0, tempopenstyle.length - 1);
|
||
tempopenstyle = tempopenstyle;
|
||
}
|
||
if (istest) {
|
||
if (address == "Net://" || !address) { $("#errorinfo").text("请输入URL!").show(); return; }
|
||
window.open(address, op_selfopen, tempopenstyle);
|
||
return;
|
||
}
|
||
$("#errorinfo").text("").hide();
|
||
return "window.open('" + address + "','" + op_selfopen + "'" + (tempopenstyle ? ",'" + tempopenstyle + "'" : "") + ")";
|
||
},
|
||
init: function (path) {
|
||
tools.checkbox();
|
||
var _this = this;
|
||
$("#gen").click(function () {
|
||
$('#showcode').val(_this.openAttr()).removeClass("col-gray"); ;
|
||
});
|
||
$("#test").click(function () {
|
||
_this.openAttr(true);
|
||
});
|
||
$("#clear").click(function () {
|
||
jQuery("#showcode").val("");
|
||
});
|
||
tools.clipfn(path);
|
||
}
|
||
},
|
||
regex: {
|
||
regCommon: {
|
||
chines: "[\\u4e00-\\u9fa5]", //中文
|
||
doubleByte: "[^\\x00-\\xff]", //双字节(包含中文)
|
||
nullLine: "\\s", //空白行
|
||
email: "\\w[-\\w.+]*@([A-Za-z0-9][-A-Za-z0-9]+\\.)+[A-Za-z]{2,14}", //邮箱
|
||
url: "^((https|Net|ftp|rtsp|mms)?:\\/\\/)[^\\s]+", //网址(只验证是否包含某些前缀)
|
||
phone: "0?(13|14|15|17|18|19)[0-9]{9}", //国内手机
|
||
tel: "[0-9-()()]{7,18}", //国内电话
|
||
nFloat: "-([1-9]\\d*.\\d*|0.\\d*[1-9]\\d*)", //负浮点数
|
||
interger: "-?[1-9]\\d*", //整型
|
||
pFloat: "[1-9]\\d*.\\d*|0.\\d*[1-9]\\d*", //正浮点数 [1-9]\d*\.\d+|0\.\d*[1-9]\d*
|
||
qq: "[1-9]([0-9]{5,11})", //QQ号
|
||
postal: "\\d{6}", //国内邮政编码
|
||
ip4: "(25[0-5]|2[0-4]\\d|[0-1]\\d{2}|[1-9]?\\d)\\.(25[0-5]|2[0-4]\\d|[0-1]\\d{2}|[1-9]?\\d)\\.(25[0-5]|2[0-4]\\d|[0-1]\\d{2}|[1-9]?\\d)\\.(25[0-5]|2[0-4]\\d|[0-1]\\d{2}|[1-9]?\\d)", //ip地址
|
||
cardId: "\\d{17}[\\d|x]|\\d{15}", //身份证号码
|
||
date: "\\d{4}(\\-|\\/|\.)\\d{1,2}\\1\\d{1,2}", //日期
|
||
pInterger: "[1-9]\\d*", //正整数
|
||
nInterger: "-[1-9]\\d*", //负整数
|
||
userName: "[A-Za-z0-9_\\-\\u4e00-\\u9fa5]+"//用户名
|
||
},
|
||
checkReg: function () {
|
||
var f = RegexPal.fields,
|
||
o = f.options;
|
||
onresize = function (e) {
|
||
var isIE1 = !!window.ActiveXObject;
|
||
var isIE61 = isIE1 && !window.XMLHttpRequest;
|
||
f.input.field.style.height = "200px";
|
||
// if (isIE61) f.input.field.style.height = Math.max((window.innerHeight || document.documentElement.clientHeight) - 310, 268) + "px";
|
||
// else f.input.field.style.height = Math.max((window.innerHeight || document.documentElement.clientHeight) - 610, 268) + "px";
|
||
f.search.setDimensions();
|
||
f.input.setDimensions()
|
||
};
|
||
onresize();
|
||
RegexPal.highlightSearchSyntax();
|
||
RegexPal.highlightMatches();
|
||
for (var flag in o.flags) {
|
||
o.flags[flag].onclick = RegexPal.highlightMatches
|
||
};
|
||
o.highlightSyntax.onclick = RegexPal.highlightSearchSyntax;
|
||
o.highlightMatches.onclick = RegexPal.highlightMatches;
|
||
o.invertMatches.onclick = RegexPal.highlightMatches;
|
||
function makeResetter(field) {
|
||
return function () {
|
||
field.clearBg();
|
||
field.textbox.value = "";
|
||
field.textbox.onfocus = null
|
||
}
|
||
};
|
||
},
|
||
itemClick: function (_this, flage) {
|
||
$("#regCommon a").click(function () {
|
||
var t = $(this).attr("t");
|
||
var reg = new RegExp(_this.regCommon[t]);
|
||
$("#searchText").val(_this.regCommon[t]).siblings(".CentHid").hide();
|
||
var val = $("#inputText").val();
|
||
if (flage) _this.checkReg();
|
||
});
|
||
},
|
||
init: function () {
|
||
tools.checkbox("reg");
|
||
var _this = this;
|
||
_this.itemClick(_this, true);
|
||
_this.checkReg(_this);
|
||
$("#repbtn").click(function () {
|
||
var reptext = $("#reptext").val();
|
||
var inputText = $("#inputText");
|
||
var reg = $("#searchText").val();
|
||
inputText.val(inputText.val().replace(new RegExp(reg, "gi"), reptext));
|
||
_this.checkReg();
|
||
});
|
||
$("#inputText").keyup(function () { $("#inputText").height($("#inputBg").height()); });
|
||
$("#inputText,#searchText").bind("keyup keydown blur", function () {
|
||
if ($("#inputText").val().indexOf('tool.chinaz.com|888') >= 0) return;
|
||
var reg = $("#searchText").val();
|
||
var val = $("#inputText").val();
|
||
if (!reg) {
|
||
$("#result").hide(); return;
|
||
}
|
||
var arr = []
|
||
try {
|
||
arr = val.match(new RegExp(reg, 'g'));
|
||
} catch (e) {
|
||
$("#result").hide(); return;
|
||
}
|
||
if (!arr) {
|
||
$("#result").hide(); return;
|
||
}
|
||
$("#result").val("");
|
||
var str = "";
|
||
for (var i = 0; i < arr.length; i++) {
|
||
str += arr[i] + "\n";
|
||
}
|
||
$("#result").show();
|
||
$("#result textarea").val(str);
|
||
$("#result p").html("匹配到 <strong>" + arr.length + "</strong> 条结果:");
|
||
});
|
||
},
|
||
languageCode: {
|
||
js: "var pattern = /{0}/,\n\tstr = '{1}';\nconsole.log(pattern.test(str));",
|
||
php: "$str = '{1}';\n$isMatched = preg_match('/{0}/', $str, $matches);\nvar_dump($isMatched, $matches);",
|
||
go: "package main\n\nimport (\n\t\"fmt\"\n\t\"regexp\"\n)\n\nfunc main() {\n\tstr := \"{1}\"\n\tmatched, err := regexp.MatchString(\"{0}\", str)\n\tfmt.Println(matched, err)\n}",
|
||
rb: "pattern = /{0}/\nstr = '{1}'\np pattern.match(str)",
|
||
py: "import re\npattern = re.compile(ur'{0}')\nstr = u'{1}'\nprint(pattern.search(str))",
|
||
java: "import java.util.regex.Matcher;\nimport java.util.regex.Pattern;\n\npublic class RegexMatches {\n\t\n\tpublic static void main(String args[]) {\n\t\tString str = \"{1}\";\n\t\tString pattern = \"{0}\";\n\n\t\tPattern r = Pattern.compile(pattern);\n\t\tMatcher m = r.matcher(str);\n\t\tSystem.out.println(m.matches());\n\t}\n\n}"
|
||
},
|
||
initgenerate: function () {
|
||
var _this = this;
|
||
_this.itemClick(_this);
|
||
$("#test").click(function () {
|
||
var pattern = $("#searchText").val();
|
||
if (!pattern) return;
|
||
var textarealist = $("#languagelist textarea");
|
||
for (var i = 0; i < textarealist.length; i++) {
|
||
var textarea = $(textarealist[i]);
|
||
var language = textarea.attr("id");
|
||
if (language == 'go' || language == 'java') pattern.replace(/\\/gi, "\\");
|
||
textarea.val(_this.languageCode[language].format(pattern, ""));
|
||
}
|
||
$("#languagelist").removeClass("autohide");
|
||
});
|
||
|
||
|
||
}
|
||
},
|
||
transcoding: {
|
||
fullhalf: {
|
||
///全角空格为12288,半角空格为32
|
||
///其他字符半角(33-126)与全角(65281-65374)的对应关系是:均相差65248
|
||
//半角转换为全角函数
|
||
ToFull: function () {
|
||
var txtstring = $('#content').val();
|
||
if (txtstring == '') {
|
||
alert("请输入要转换的字符串");
|
||
return;
|
||
}
|
||
var tmp = "";
|
||
for (var i = 0; i < txtstring.length; i++) {
|
||
if (txtstring.charCodeAt(i) == 32) {
|
||
tmp = tmp + String.fromCharCode(12288);
|
||
}
|
||
else if (txtstring.charCodeAt(i) < 127) {
|
||
tmp = tmp + String.fromCharCode(txtstring.charCodeAt(i) + 65248);
|
||
}
|
||
else
|
||
tmp = tmp + String.fromCharCode(txtstring.charCodeAt(i));
|
||
}
|
||
$('#result').val(tmp);
|
||
},
|
||
//全角转换为半角函数
|
||
ToHalf: function () {
|
||
var str = $('#content').val();
|
||
if (str == '') {
|
||
alert('请输入要转换的字符');
|
||
return;
|
||
}
|
||
var tmp = "";
|
||
for (var i = 0; i < str.length; i++) {
|
||
if (str.charCodeAt(i) > 65280 && str.charCodeAt(i) < 65375) {
|
||
tmp += String.fromCharCode(str.charCodeAt(i) - 65248);
|
||
}
|
||
else if (str.charCodeAt(i) == 12288) {
|
||
tmp += String.fromCharCode(32);
|
||
}
|
||
else {
|
||
tmp += String.fromCharCode(str.charCodeAt(i));
|
||
}
|
||
}
|
||
$('#result').val(tmp);
|
||
|
||
},
|
||
init: function () {
|
||
var _this = this;
|
||
$("#tohalf").click(function () {
|
||
_this.ToHalf();
|
||
if (jQuery("#result").val()) $("#result").siblings().hide();
|
||
});
|
||
$("#tofull").click(function () {
|
||
_this.ToFull();
|
||
if (jQuery("#result").val()) $("#result").siblings().hide();
|
||
});
|
||
$("#clear").click(function () {
|
||
$("textarea").val("");
|
||
});
|
||
$("textarea").keydown(function () {
|
||
$(this).removeClass("col-gray");
|
||
});
|
||
}
|
||
},
|
||
wordspell: function () {
|
||
var forms = document.forms[0];
|
||
forms.content.onclick = function () {
|
||
$(this).removeClass("col-gray");
|
||
};
|
||
forms.trans.onclick = function () {
|
||
var str = toPinyin({ str: forms.content.value, dz: forms.hidesel.value, sym: forms.sym.checked, sym1: forms.sym1.checked, sym2: forms.sym2.checked });
|
||
forms.result.value = str;
|
||
if (jQuery("textarea[name=\"result\"]").val()) $("textarea[name=\"result\"]").siblings().hide();
|
||
$(forms.result).removeClass("col-gray");
|
||
}
|
||
var clear = getid("clear");
|
||
clear.onclick = function () {
|
||
forms.result.value = '';
|
||
forms.content.value = '';
|
||
}
|
||
},
|
||
gbbig: function () {
|
||
var forms = document.forms[0];
|
||
forms.tosim.onclick = function () {
|
||
convert(0); $(forms.result).removeClass("col-gray");
|
||
if (jQuery("#result").val()) $("#result").siblings().hide();
|
||
}
|
||
forms.totra.onclick = function () {
|
||
convert(1); $(forms.result).removeClass("col-gray");
|
||
if (jQuery("#result").val()) $("#result").siblings().hide();
|
||
}
|
||
forms.toother.onclick = function () {
|
||
convert(2); $(forms.result).removeClass("col-gray");
|
||
if (jQuery("#result").val()) $("#result").siblings().hide();
|
||
}
|
||
forms.clear.onclick = function () {
|
||
forms.result.value = '';
|
||
forms.textarea.value = '';
|
||
}
|
||
},
|
||
pinyindictionary: function (path) {
|
||
var forms = getid('fm');
|
||
forms.content.onclick = function () {
|
||
$(this).removeClass("col-gray");
|
||
};
|
||
forms.seach.onclick = function () {
|
||
trans(); $(forms.result).removeClass("col-gray");
|
||
if (jQuery("#result").val()) $("#result").siblings().hide();
|
||
}
|
||
forms.clear.onclick = function () {
|
||
forms.result.value = '';
|
||
forms.content.value = '';
|
||
}
|
||
tools.clipfn(path);
|
||
},
|
||
lowtoupp: function (path) {
|
||
tools.clipfn(path, "clip");
|
||
tools.clipfn(path, "clip1");
|
||
var forms = getid('fm');
|
||
//forms.num.onkeydown = function (e) { entNumber(e); $(forms.trans).removeClass("col-gray"); $(forms.num).removeClass("col-gray"); }
|
||
$("#num").keydown(function (e) {
|
||
entNumber(e);
|
||
$(forms.trans).removeClass("col-gray");
|
||
$(forms.num).removeClass("col-gray");
|
||
});
|
||
forms.seach.onclick = function () {
|
||
TransConvert();
|
||
if (jQuery("#trans").val()) $("#trans").siblings().hide();
|
||
}
|
||
forms.clear.onclick = function () { tools.clear([getid('trans'), getid('num')]); }
|
||
forms.toupp.onclick = function () {
|
||
englishConvert('touppercase'); $(forms.content).removeClass("col-gray");
|
||
if (jQuery("#result").val()) $("#result").siblings().hide();
|
||
}
|
||
forms.tolow.onclick = function () {
|
||
englishConvert('tolowercase'); $(forms.content).removeClass("col-gray");
|
||
if (jQuery("#result").val()) $("#result").siblings().hide();
|
||
}
|
||
forms.firstupp.onclick = function () {
|
||
englishConvert('touppercaseF'); $(forms.content).removeClass("col-gray");
|
||
if (jQuery("#result").val()) $("#result").siblings().hide();
|
||
}
|
||
forms.clear1.onclick = function () { tools.clear([getid('content')]); }
|
||
forms.content.onclick = function () { $(this).removeClass("col-gray"); }
|
||
},
|
||
qrcode: {
|
||
loadSWF: function () {
|
||
var swfu = new SWFUpload({
|
||
upload_url: "/ajaxseo.aspx?t=pload",
|
||
file_size_limit: "100 KB",
|
||
file_types: "*.jpg;*.gif;*.png;*.jpe;*.jpeg",
|
||
file_upload_limit: "50",
|
||
file_queue_limit: 1,
|
||
file_dialog_start_handler: fileDialogStart,
|
||
file_queued_handler: fileQueued,
|
||
file_queue_error_handler: fileQueueError,
|
||
file_dialog_complete_handler: fileDialogComplete,
|
||
upload_progress_handler: uploadProgress,
|
||
upload_error_handler: uploadError,
|
||
upload_success_handler: uploadSuccess,
|
||
upload_complete_handler: uploadComplete,
|
||
//button_image_url: "/template/default/images/public/tool-pus.png",
|
||
button_width: 213,
|
||
button_height: 80,
|
||
button_placeholder_id: "buttonPlaceHolder",
|
||
//button_text: "选择二维码图片",
|
||
button_text_style: "",
|
||
/*button_text_top_padding: 3,
|
||
button_text_left_padding: 12,*/
|
||
button_window_mode: SWFUpload.WINDOW_MODE.TRANSPARENT,
|
||
button_cursor: SWFUpload.CURSOR.HAND,
|
||
flash_url: "/template/default/js/swfup/swfupload.swf",
|
||
custom_settings: {
|
||
progressTarget: "fsUploadProgress",
|
||
cancelButtonId: "btnCancel"
|
||
},
|
||
debug: false
|
||
});
|
||
},
|
||
init: function () {
|
||
var _this = this;
|
||
jQuery("#txtarea").focus(function () {
|
||
var v = jQuery(this).val();
|
||
$(this).removeClass("col-gray");
|
||
if (v == '200字符以内') jQuery(this).val('')
|
||
}).blur(function () {
|
||
var v = jQuery(this).val();
|
||
if (v == '') {
|
||
jQuery(this).val('200字符以内');
|
||
$(this).addClass("col-gray");
|
||
}
|
||
}).keyup(function () {
|
||
var v = jQuery(this).val();
|
||
var length = jQuery.trim(v).length;
|
||
if (length > 199) {
|
||
jQuery(this).val(v.substr(0, 200));
|
||
jQuery("#fontnum").html('200');
|
||
return
|
||
};
|
||
jQuery("#fontnum").html(length)
|
||
});
|
||
_this.loadSWF();
|
||
$("#generate").click(function () {
|
||
if (!$("#decodingbox").hasClass("autohide")) {
|
||
$("#decodingbox").addClass("autohide");
|
||
$("#generatebox").removeClass("autohide");
|
||
if ($("#imgdiv").length) $("#imgdiv").removeClass("autohide");
|
||
$("#fsUploadProgress").html('');
|
||
$(this).addClass("currtBtn").removeClass("LinkBrn");
|
||
$("#decoding").addClass("LinkBrn").removeClass("currtBtn");
|
||
} else {
|
||
$("form").submit();
|
||
}
|
||
});
|
||
$("#decoding").click(function () {
|
||
$("#generatebox").addClass("autohide");
|
||
$("#decodingbox").removeClass("autohide");
|
||
if ($("#imgdiv").length) $("#imgdiv").addClass("autohide");
|
||
$(this).addClass("currtBtn").removeClass("LinkBrn");
|
||
$("#generate").addClass("LinkBrn").removeClass("currtBtn");
|
||
});
|
||
}
|
||
},
|
||
utf_8: function () {
|
||
$("#conv").click(function () {
|
||
$("#result").val($("#content").val().replace(/[^\u0000-\u00FF]/g, function ($0) { return escape($0).replace(/(%u)(\w{4})/gi, "&#x$2;") }));
|
||
if (jQuery("#result").val()) $("#result").siblings().hide();
|
||
});
|
||
$("#res").click(function () {
|
||
$("#content").val(unescape($("#result").val().replace(/&#x/g, '%u').replace(/;/g, '')));
|
||
if (jQuery("#content").val()) $("#content").siblings().hide();
|
||
});
|
||
$("#clear").click(function () {
|
||
tools.clear([getid("content"), getid("result")]);
|
||
$(".CentHid").show();
|
||
});
|
||
}
|
||
},
|
||
other: {
|
||
wordcounter: {
|
||
wordStats: {
|
||
unsortedWords: null,
|
||
topWords: null,
|
||
topWeights: null,
|
||
_computed: false,
|
||
addWords: function (str, weight) {
|
||
if (str && str.length > 1) {
|
||
var keywords = $("#keywordstxt").val().split(',');
|
||
var regstr = "";
|
||
//keywords = this.bubbleSort(keywords);
|
||
keywords = keywords.trimArray();
|
||
for (var i = 0; i < keywords.length; i++) {
|
||
var kw = keywords[i].replace(/(\\)/g, "\\").replace(/(\^)/g, "\\^").replace(/(\$)/g, "\\$").replace(/(\.)/g, "\\.").replace(/(\*)/g, "\\*").replace(/(\?)/g, "\\?").replace(/(\+)/g, "\\+");
|
||
if (kw) {
|
||
regstr += "(" + kw + ")";
|
||
if (i < keywords.length - 1)
|
||
regstr += "|";
|
||
}
|
||
}
|
||
if (regstr)
|
||
try {
|
||
this.getWords(str.toLowerCase(), new RegExp(regstr, "gi"), weight);
|
||
} catch (e) {
|
||
|
||
}
|
||
}
|
||
},
|
||
bubbleSort: function (arr) {
|
||
for (var i = 0; i < arr.length; i++) {
|
||
for (var j = i; j < arr.length; j++) {
|
||
if (arr[i].length < arr[j].length) {
|
||
var temp = arr[i];
|
||
arr[i] = arr[j];
|
||
arr[j] = temp;
|
||
}
|
||
}
|
||
}
|
||
return arr;
|
||
},
|
||
addWordsFromTextNodes: function (node, weight) {
|
||
var nodes = node.childNodes;
|
||
for (var i = 0, j = nodes.length; i < j; i++) {
|
||
if (nodes[i].nodeType == 3)
|
||
this.addWords(nodes[i].nodeValue, weight);
|
||
}
|
||
},
|
||
getWords: function (words, reg, weight) {
|
||
this.unsortedWords = new Array();
|
||
var arr = words.match(reg);
|
||
if (arr == null) return;
|
||
for (var i = 0; i < arr.length; i++) {
|
||
if (arr[i] != ',') {
|
||
var word = arr[i].toLowerCase();
|
||
if (this.unsortedWords[word])
|
||
this.unsortedWords[word] += weight;
|
||
else this.unsortedWords[word] = weight;
|
||
}
|
||
}
|
||
},
|
||
computeWords: function (elem) {
|
||
if (!elem) elem = window.document;
|
||
this.unsortedWords = new Array();
|
||
if (elem.is("textarea")) {
|
||
this.addWords(elem.val(), 1);
|
||
return;
|
||
}
|
||
this.addWords($('title', elem).text(), 20); wordstats = this; $('h1', elem).each(function () {
|
||
wordstats.addWordsFromTextNodes($(this).get(0), 15);
|
||
}); $('h2', elem).each(function () {
|
||
wordstats.addWordsFromTextNodes($(this).get(0), 10);
|
||
}); $('h3, h4, h5, h6', elem).each(function () {
|
||
wordstats.addWordsFromTextNodes($(this).get(0), 5);
|
||
}); $('strong, b, em, i', elem).each(function () {
|
||
wordstats.addWordsFromTextNodes($(this).get(0), 3);
|
||
}); $('p, div, th, td, li, a, span', elem).each(function () {
|
||
wordstats.addWordsFromTextNodes($(this).get(0), 2);
|
||
}); $('img', elem).each(function () {
|
||
wordstats.addWords($(this).attr('alt'), 1);
|
||
wordstats.addWords($(this).attr('title'), 1);
|
||
}); this._computed = true;
|
||
},
|
||
computeTopWords: function (count, elem) {
|
||
if (!this._computed)
|
||
this.computeWords(elem);
|
||
this.topWords = new Array();
|
||
this.topWeights = new Array();
|
||
this.topWeights.push(0);
|
||
for (word in this.unsortedWords) {
|
||
for (var i = 0; i < count; i++) {
|
||
if (this.unsortedWords[word] > this.topWeights[i]) {
|
||
this.topWeights.splice(i, 0, this.unsortedWords[word]);
|
||
this.topWords.splice(i, 0, word);
|
||
break;
|
||
}
|
||
}
|
||
}
|
||
}, clear: function () {
|
||
this.unsortedWords = this.sortedWords = this.topWords = this.topWeights = null;
|
||
this._computed = false;
|
||
}
|
||
},
|
||
displayCount: function (count) {
|
||
if (count['words'] == 1) {
|
||
wordOrWords = " Word";
|
||
} else {
|
||
wordOrWords = " Words";
|
||
}
|
||
if (count['chars'] == 1) {
|
||
charOrChars = " Character";
|
||
} else {
|
||
charOrChars = " Characters";
|
||
}
|
||
str = '<strong class="col-blue02 pr10">{5}</strong><span class="pr40">Total</span><strong class="col-blue02 pr10">{0}</strong><span class="pr40">{1}</span><strong class="col-blue02 pr10">{2}</strong><span class="pr40">{3}</span><strong class="col-blue02 pr10">{4}</strong><span>Chinese</span>';
|
||
$(".counted").html(str.format(count['words'], wordOrWords, count['chars'], charOrChars, count['chinese'], $("#box").val().length));
|
||
},
|
||
displayTextBoxes: function (count) {
|
||
$("#word_count").text(count['words']);
|
||
$("#character_count").text(count['chars']);
|
||
$("#character_count_no_spaces").text(count['chars_no_spaces']);
|
||
$("#chinese_count_no_spaces").text(count['chinese']);
|
||
$("#sentence_count").text(count['sentences']);
|
||
$("#paragraph_count").text(count['paragraphs']);
|
||
$("#avg_sentence_words").text(count['avg_sentence_words']);
|
||
$("#avg_sentence_chars").text(count['avg_sentence_chars']);
|
||
},
|
||
countWords: function (text, language) {
|
||
if (language == 2) {
|
||
var words = text.match(/\S+/g);
|
||
} else {
|
||
var words = text.replace(/[,;.!:—\/]/g, ' ').replace(/[^a-zA-Z\d\s&:]/g, '').match(/\S+/g);
|
||
}
|
||
return (words !== null ? words.length : 0);
|
||
},
|
||
countChinese: function (text) {
|
||
iTotal = 0;
|
||
for (i = 0; i < text.length; i++) {
|
||
var c = text.charAt(i);
|
||
if (c.match(/[\u4e00-\u9fa5]/)) {
|
||
iTotal++;
|
||
}
|
||
}
|
||
return iTotal;
|
||
},
|
||
wordCountInternational: function () {
|
||
var _this = tools.other.wordcounter;
|
||
var box = $("#box");
|
||
var count = [];
|
||
count['words'] = _this.countWords(box.val(), 0);
|
||
chars = box.val().match(/(?:[^\r\n]|\r(?!\n))/g);
|
||
count['chars'] = (chars !== null ? chars.length : 0);
|
||
count['chinese'] = _this.countChinese(box.val());
|
||
chars_no_spaces = box.val().match(/\S/g);
|
||
count['chars_no_spaces'] = (chars_no_spaces !== null ? chars_no_spaces.length : 0);
|
||
sentences = box.val().match(/[^.!?\s][^.!?]*(?:[.!?](?!['"]?\s|$)[^.!?]*)*[.!?]?['"]?(?=\s|$)/g);
|
||
count['sentences'] = (sentences !== null ? sentences.length : 0);
|
||
paragraphs = box.val().match(/(\n\n?|^).*?(?=\n\n?|$)/g);
|
||
count['paragraphs'] = (box.val() != '' ? (paragraphs !== null ? paragraphs.length : 0) : 0);
|
||
count['avg_sentence_words'] = (box.val() != '' ? Math.ceil(count['words'] / count['sentences']) : 0);
|
||
count['avg_sentence_chars'] = (box.val() != '' ? Math.ceil(count['chars'] / count['sentences']) : 0);
|
||
_this.displayCount(count);
|
||
_this.displayTextBoxes(count);
|
||
},
|
||
keywordDensity: function () {
|
||
var max = 1000;
|
||
var stats = tools.other.wordcounter.wordStats;
|
||
var _this = tools.other.wordcounter;
|
||
stats.computeTopWords(max, $('#box'));
|
||
var density_list = $("#density_list");
|
||
density_list.empty();
|
||
var text = '';
|
||
var percentage;
|
||
$("#keywords li:first").nextAll().remove();
|
||
for (i = 0; i < stats.topWords.length; i++) {
|
||
var percentage = (100 * (stats.topWeights[i] * stats.topWords[i].length / $("#box").val().length)).toFixed(0);
|
||
var str = '<div class="w30-0{3}">{0}</div><div class="w15-0 col-blue02">{1}({2}%)</div>';
|
||
if (i % 2 == 0) {
|
||
str = '<li class="DelListCent DelRLlist bor-b1s">' + str + '</li>';
|
||
$("#keywords").append(str.format(stats.topWords[i].html2Escape(), stats.topWeights[i], percentage, ''));
|
||
} else {
|
||
$("#keywords li:last").append(str.format(stats.topWords[i].html2Escape(), stats.topWeights[i], percentage, ' bor-l1s'));
|
||
}
|
||
}
|
||
stats.clear();
|
||
},
|
||
init: function () {
|
||
var _this = this;
|
||
$("#box").bind("keypress keyup keydown blur focus change load", _this.wordCountInternational);
|
||
$("#box").bind("keypress keyup keydown blur focus change load", _this.keywordDensity);
|
||
$("#clear").click(function () {
|
||
tools.clear([getid('box')]);
|
||
});
|
||
$("#keywordstxt").bind("keypress keyup keydown blur focus change load", _this.keywordDensity);
|
||
$("#clkshowbox").click(function () {
|
||
var showbox = $("#showbox");
|
||
if (showbox.hasClass("autohide"))
|
||
showbox.removeClass("autohide");
|
||
else
|
||
showbox.addClass("autohide");
|
||
});
|
||
}
|
||
},
|
||
httptest: function () {
|
||
var pramsHtml = '<div class="portTestWrap clearfix pt20">';
|
||
pramsHtml += '<div class="Porname"><input type="text" class="TitInput _WrapHid w240" name="paramsname" value="{0}" /><b class="search-hint CentHid mt5" style="display:{2}">参数名</b></div>';
|
||
pramsHtml += '<div class="Porname ml10"><input type="text" class="TitInput _WrapHid w360" name="paramsval" value="{1}" /><b class="search-hint CentHid mt5" style="display:{2}">值</b></div>';
|
||
pramsHtml += '<div class="fl pl10"><input type="button" value="删除" class="TitInBtn w70 removeparams" /></div></div>';
|
||
$("#addparams").click(function () {
|
||
if ($("#isRAW").prop("checked")) {
|
||
$(".portTestWrap").remove();
|
||
$("#RAW").removeClass("autohide");
|
||
} else {
|
||
$("#RAW").addClass("autohide");
|
||
$("#totest").after(pramsHtml.format("", "", "block"));
|
||
$("input.removeparams").click(function () {
|
||
$(this).parent().remove();
|
||
});
|
||
$("._WrapHid").each(function () {
|
||
checkFocus({
|
||
obj_input: $(this),
|
||
msgBox: $(this).siblings(".CentHid"),
|
||
Tip: "CentHid"
|
||
});
|
||
clearInput({
|
||
obj_input: $(this),
|
||
msgBox: $(this).siblings("._CentHid"),
|
||
Tip: "_CentHid"
|
||
});
|
||
});
|
||
}
|
||
$("input.removeparams").off("click");
|
||
$("input.removeparams").click(function () {
|
||
$(this).parents(".portTestWrap").remove();
|
||
});
|
||
});
|
||
$("#OK").click(function () {
|
||
$("#hideRAW").val($("#RAWval").val());
|
||
$("#RAW").addClass("autohide");
|
||
$(".portTestWrap").remove();
|
||
var arr = $("#RAWval").val().queryString();
|
||
for (var i = 0; i < arr.length; i++) {
|
||
$("#totest").after(pramsHtml.format(arr[i].k, arr[i].v, "none"));
|
||
}
|
||
});
|
||
}
|
||
},
|
||
encryptDecode: {
|
||
base64: function () {
|
||
/*$("#conv").click(function () {
|
||
var str = CryptoJS.enc.Utf8.parse(jQuery("#content").val());
|
||
var base64 = CryptoJS.enc.Base64.stringify(str);
|
||
jQuery("#result").val(base64);
|
||
if (jQuery("#result").val()) $("#result").siblings().hide();
|
||
});
|
||
$("#res").click(function () {
|
||
var words = CryptoJS.enc.Base64.parse(jQuery("#result").val());
|
||
try {
|
||
jQuery("#content").val(words.toString(CryptoJS.enc.Utf8));
|
||
} catch (e) {
|
||
jQuery("#content").val("格式有误");
|
||
}
|
||
if (jQuery("#content").val()) $("#content").siblings().hide();
|
||
});*/
|
||
$("#conv").click(function () {
|
||
jQuery("#result").val(encode64(jQuery("#content").val()));
|
||
jQuery("#content").val(jQuery("#content").val().replace(/(^\n|\n$)/g, '').replace(/\n{2,}/, '\n'));
|
||
if (jQuery("#result").val()) $("#result").siblings().hide();
|
||
});
|
||
$("#res").click(function () {
|
||
jQuery("#content").val(decode64(jQuery("#result").val()));
|
||
jQuery("#result").val(jQuery("#result").val().replace(/(^\n|\n$)/g, '').replace(/\n{2,}/, '\n'));
|
||
if (jQuery("#content").val()) $("#content").siblings().hide();
|
||
});
|
||
$("#clear").click(function () {
|
||
tools.clear([getid("content"), getid("result")]);
|
||
$(".CentHid").show();
|
||
});
|
||
var keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
|
||
function encode64(val) {
|
||
val = getVal(val);
|
||
var output = "";
|
||
for (var i = 0; i < val.length; i++) {
|
||
output += enWhile(escape(val[i].trim()));
|
||
if (i < val.length - 1)
|
||
output += "\n";
|
||
}
|
||
return output;
|
||
}
|
||
function getVal(val) {
|
||
var val = val.replace(/\n/g, '|');
|
||
if (val.indexOf('|') >= 0)
|
||
val = val.split('|');
|
||
else
|
||
val = [val];
|
||
return val.trimArray();
|
||
}
|
||
function enWhile(input) {
|
||
var output = "";
|
||
var chr1, chr2, chr3 = "";
|
||
var enc1, enc2, enc3, enc4 = "";
|
||
var i = 0;
|
||
do {
|
||
chr1 = input.charCodeAt(i++);
|
||
chr2 = input.charCodeAt(i++);
|
||
chr3 = input.charCodeAt(i++);
|
||
enc1 = chr1 >> 2;
|
||
enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);
|
||
enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);
|
||
enc4 = chr3 & 63;
|
||
if (isNaN(chr2)) {
|
||
enc3 = enc4 = 64;
|
||
}
|
||
else if (isNaN(chr3)) {
|
||
enc4 = 64;
|
||
}
|
||
output = output + keyStr.charAt(enc1) + keyStr.charAt(enc2) + keyStr.charAt(enc3) + keyStr.charAt(enc4);
|
||
chr1 = chr2 = chr3 = "";
|
||
enc1 = enc2 = enc3 = enc4 = "";
|
||
} while (i < input.length);
|
||
return output
|
||
}
|
||
function decode64(val) {
|
||
val = getVal(val);
|
||
var output = "";
|
||
for (var i = 0; i < val.length; i++) {
|
||
output += deWhile(val[i].trim());
|
||
if (i < val.length - 1)
|
||
output += "\n";
|
||
}
|
||
return output;
|
||
}
|
||
function deWhile(input) {
|
||
var output = "";
|
||
var chr1, chr2, chr3 = "";
|
||
var enc1, enc2, enc3, enc4 = "";
|
||
var i = 0;
|
||
var base64test = /[^A-Za-z0-9\+\/\=]/g;
|
||
if (base64test.exec(input)) {
|
||
return "不是有效的Base64编码";
|
||
}
|
||
input = input.replace(/[^A-Za-z0-9\+\/\=]/g, "");
|
||
do {
|
||
enc1 = keyStr.indexOf(input.charAt(i++));
|
||
enc2 = keyStr.indexOf(input.charAt(i++));
|
||
enc3 = keyStr.indexOf(input.charAt(i++));
|
||
enc4 = keyStr.indexOf(input.charAt(i++));
|
||
chr1 = (enc1 << 2) | (enc2 >> 4);
|
||
chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);
|
||
chr3 = ((enc3 & 3) << 6) | enc4;
|
||
output = output + String.fromCharCode(chr1);
|
||
if (enc3 != 64) {
|
||
output = output + String.fromCharCode(chr2);
|
||
}
|
||
if (enc4 != 64) {
|
||
output = output + String.fromCharCode(chr3);
|
||
}
|
||
chr1 = chr2 = chr3 = "";
|
||
enc1 = enc2 = enc3 = enc4 = "";
|
||
} while (i < input.length);
|
||
return unescape(output);
|
||
}
|
||
},
|
||
unicode: function () {
|
||
//ASCII 转换 Unicode
|
||
$("#asicctounicode").click(function () {
|
||
if (document.getElementById('content').value == '') {
|
||
alert('文本框中没有代码!');
|
||
return;
|
||
}
|
||
document.getElementById('result').value = '';
|
||
for (var i = 0; i < document.getElementById('content').value.length; i++)
|
||
result.value += '&#' + document.getElementById('content').value.charCodeAt(i) + ';';
|
||
document.getElementById('content').focus();
|
||
if (jQuery("#result").val()) $("#result").siblings().hide();
|
||
});
|
||
//Unicode 转换 ASCII
|
||
$("#unicodetoasicc").click(function () {
|
||
var code = document.getElementById('content').value.match(/&#(\d+);/g);
|
||
if (code == null) {
|
||
alert('文本框中没有合法的Unicode代码!'); document.getElementById('content').focus();
|
||
return;
|
||
}
|
||
document.getElementById('result').value = '';
|
||
for (var i = 0; i < code.length; i++)
|
||
document.getElementById('result').value += String.fromCharCode(code[i].replace(/[&#;]/g, ''));
|
||
document.getElementById('content').focus();
|
||
if (jQuery("#result").val()) $("#result").siblings().hide();
|
||
});
|
||
$("#clear").click(function () {
|
||
tools.clear([getid("content"), getid("result")]);
|
||
$(".CentHid").show();
|
||
});
|
||
},
|
||
scriptEncode: function () {
|
||
$("#jsencode").click(function () {
|
||
var v = getid('ipt').value;
|
||
if (!v) return;
|
||
var es = escape(v);
|
||
getid('result').value = "document.write(unescape('{0}'));".format(es);
|
||
if (jQuery("#result").val()) $("#result").siblings().hide();
|
||
});
|
||
$("#jsdecode").click(function () {
|
||
var v = getid('result').value;
|
||
var regex = /unescape\('([a-z%0-9].*)'\)/i;
|
||
if (v.match(regex)) {
|
||
getid('ipt').value = unescape(RegExp.$1);
|
||
}
|
||
if (jQuery("#ipt").val()) $("#ipt").siblings().hide();
|
||
});
|
||
$("#clear").click(function () {
|
||
tools.clear([getid("ipt"), getid("result")]);
|
||
$(".CentHid").show();
|
||
});
|
||
},
|
||
textEncrypt: function () {
|
||
$("#encrypt").click(function () {
|
||
var v = jQuery('input[name="encrypt_type"]').val();
|
||
if (!v) return;
|
||
switch (v) {
|
||
case "aes":
|
||
jQuery("#result").val(CryptoJS.AES.encrypt(jQuery("#content").val(), jQuery("#pwd").val()));
|
||
break;
|
||
case "des":
|
||
jQuery("#result").val(CryptoJS.DES.encrypt(jQuery("#content").val(), jQuery("#pwd").val()));
|
||
break;
|
||
case "rabbit":
|
||
jQuery("#result").val(CryptoJS.Rabbit.encrypt(jQuery("#content").val(), jQuery("#pwd").val()));
|
||
break;
|
||
case "rc4":
|
||
jQuery("#result").val(CryptoJS.RC4.encrypt(jQuery("#content").val(), jQuery("#pwd").val()));
|
||
break;
|
||
case "tripledes":
|
||
jQuery("#result").val(CryptoJS.TripleDES.encrypt(jQuery("#content").val(), jQuery("#pwd").val()));
|
||
break;
|
||
}
|
||
if (jQuery("#result").val()) $("#result").siblings().hide();
|
||
});
|
||
$("#decrypt").click(function () {
|
||
switch (jQuery('input[name="encrypt_type"]').val()) {
|
||
case "aes":
|
||
jQuery("#content").val(CryptoJS.AES.decrypt(jQuery("#result").val(), jQuery("#pwd").val()).toString(CryptoJS.enc.Utf8));
|
||
break;
|
||
case "des":
|
||
jQuery("#content").val(CryptoJS.DES.decrypt(jQuery("#result").val(), jQuery("#pwd").val()).toString(CryptoJS.enc.Utf8));
|
||
break;
|
||
case "rabbit":
|
||
jQuery("#content").val(CryptoJS.Rabbit.decrypt(jQuery("#result").val(), jQuery("#pwd").val()).toString(CryptoJS.enc.Utf8));
|
||
break;
|
||
case "rc4":
|
||
jQuery("#content").val(CryptoJS.RC4.decrypt(jQuery("#result").val(), jQuery("#pwd").val()).toString(CryptoJS.enc.Utf8));
|
||
break;
|
||
case "tripledes":
|
||
jQuery("#content").val(CryptoJS.TripleDES.decrypt(jQuery("#result").val(), jQuery("#pwd").val()).toString(CryptoJS.enc.Utf8));
|
||
break;
|
||
}
|
||
if (jQuery("#content").val()) $("#content").siblings().hide();
|
||
});
|
||
$("#clear").click(function () {
|
||
tools.clear([getid("content"), getid("result")]);
|
||
$(".CentHid").show();
|
||
});
|
||
},
|
||
nativeAscii: function () {
|
||
$("#nativeConvertAscii").click(function () {
|
||
var nativecode = getid("nativecode").value.split("");
|
||
var ascii = "";
|
||
for (var i = 0; i < nativecode.length; i++) {
|
||
var code = Number(nativecode[i].charCodeAt(0));
|
||
if (!document.getElementById("ignoreLetter").checked || code > 127) {
|
||
var charAscii = code.toString(16);
|
||
charAscii = new String("0000").substring(charAscii.length, 4) + charAscii;
|
||
ascii += "\\u" + charAscii;
|
||
} else {
|
||
ascii += nativecode[i];
|
||
}
|
||
}
|
||
getid("asciicode").value = ascii;
|
||
if (jQuery("#asciicode").val()) $("#asciicode").siblings().hide();
|
||
});
|
||
|
||
$("#asciiConvertNative").click(function () {
|
||
var asciicode = getid("asciicode").value.split("\\u");
|
||
var nativeValue = asciicode[0];
|
||
for (var i = 1; i < asciicode.length; i++) {
|
||
var code = asciicode[i];
|
||
nativeValue += String.fromCharCode(parseInt("0x" + code.substring(0, 4)));
|
||
if (code.length > 4) {
|
||
nativeValue += code.substring(4, code.length);
|
||
}
|
||
}
|
||
getid("nativecode").value = nativeValue;
|
||
if (jQuery("#nativecode").val()) $("#nativecode").siblings().hide();
|
||
});
|
||
$("#clear").click(function () {
|
||
tools.clear([getid("nativecode"), getid("asciicode")]);
|
||
$(".CentHid").show();
|
||
});
|
||
},
|
||
unixtime: {
|
||
currentTimeActive: 1,
|
||
unixTimer: 0,
|
||
unix2human: function () {
|
||
var isms = $("#unixtoutc8sel").val();
|
||
var v = document.unix.timestamp.value;
|
||
if (isms == 0) {
|
||
if (/^(-)?\d{1,10}$/.test(v)) {
|
||
v = v * 1000;
|
||
} else if (/^(-)?\d{1,13}$/.test(v)) {
|
||
v = v * 1000;
|
||
} else if (/^(-)?\d{1,14}$/.test(v)) {
|
||
v = v * 100;
|
||
} else if (/^(-)?\d{1,15}$/.test(v)) {
|
||
v = v * 10;
|
||
} else if (/^(-)?\d{1,16}$/.test(v)) {
|
||
v = v * 1;
|
||
} else {
|
||
alert("时间戳格式不正确");
|
||
return;
|
||
}
|
||
} else {
|
||
v = v * 1;
|
||
}
|
||
|
||
var dateObj = new Date(v);
|
||
if (dateObj.format('yyyy') == "NaN") { /*alert("时间戳格式不正确");*/return; }
|
||
//获得当前间戳的日期的小时数
|
||
var tmpHours = dateObj.getHours();
|
||
//算时区
|
||
var time_zone = -dateObj.getTimezoneOffset() / 60;
|
||
if (time_zone < 0) {
|
||
time_zone = Math.abs(time_zone) + 8; dateObj.setHours(tmpHours + time_zone);
|
||
} else {
|
||
time_zone -= 8; dateObj.setHours(tmpHours - time_zone);
|
||
}
|
||
var UnixTimeToDate = dateObj.getFullYear() + '-' + (dateObj.getMonth() + 1) + '-' + dateObj.getDate() + ' ' + dateObj.getHours() + ':' + dateObj.getMinutes() + ':' + dateObj.getSeconds();
|
||
document.unix.unixtoutc8result.value = UnixTimeToDate;
|
||
},
|
||
human2unix: function () {
|
||
var isms = $("#utc8tounixsel").val();
|
||
var _this = ted.unixtime;
|
||
var form = document.unix;
|
||
var year = form.year.value; if (!year) { /*alert("时间格式不正确");*/return; }
|
||
var month = _this.stripLeadingZeroes(form.month.value);
|
||
var day = _this.stripLeadingZeroes(form.day.value);
|
||
var hour = _this.stripLeadingZeroes(form.hour.value);
|
||
var minute = _this.stripLeadingZeroes(form.minute.value);
|
||
var second = _this.stripLeadingZeroes(form.second.value);
|
||
year = year ? year : new Date().getFullYear(), month = month ? month : 1, day = day ? day : 1, hour = hour ? hour : (year == 1970 ? 0 : 0), minute = minute ? minute : 0, second = second ? second : 0;
|
||
//var humanDate = new Date(Date.UTC(year, month, day, hour, minute, second));
|
||
|
||
var humanDate = new Date(year + "/" + month + "/" + day + " " + hour + ":" + minute + ":" + second);
|
||
if (humanDate.format('yyyy') == "NaN") { /*alert("时间格式不正确");*/return; }
|
||
if (isms == 0) document.unix.utc8tounixresult.value = (humanDate.getTime() / 1000);
|
||
else document.unix.utc8tounixresult.value = humanDate.getTime();
|
||
},
|
||
human2unix1: function () {
|
||
var isms = $("#unixtoutc81sel").val();
|
||
var _this = ted.unixtime;
|
||
var form = document.unix;
|
||
var datetime = form.utc8.value;
|
||
if (!datetime) return;
|
||
var ndate = new Date(datetime);
|
||
var year = ndate.getFullYear();
|
||
var month = ndate.getMonth();
|
||
var day = ndate.getDate();
|
||
var hour = ndate.getHours();
|
||
var minute = ndate.getMinutes();
|
||
var second = ndate.getSeconds();
|
||
var ms = ndate.getMilliseconds();
|
||
//var humanDate = new Date(Date.UTC(year, month, day, hour, minute, second));
|
||
var humanDate;
|
||
if (isms == 0) humanDate = new Date(year, month, day, hour, minute, second);
|
||
else humanDate = new Date(year, month, day, hour, minute, second, ms);
|
||
if (humanDate.format('yyyy') == "NaN") { /*alert("时间格式不正确");*/return; }
|
||
if (isms == 0) form.unixtoutc8result1.value = (humanDate.getTime() / 1000);
|
||
else form.unixtoutc8result1.value = humanDate.getTime();
|
||
},
|
||
stripLeadingZeroes: function (input) {
|
||
if ((input.length > 1) && (input.substr(0, 1) == "0")) {
|
||
return input.substr(1);
|
||
} else {
|
||
return input;
|
||
}
|
||
},
|
||
currentTime: function () {
|
||
var _this = ted.unixtime;
|
||
var timeNow = new Date();
|
||
document.getElementById("currentunixtime").innerHTML = Math.round(timeNow.getTime() / 1000);
|
||
if (_this.currentTimeActive) {
|
||
this.unixTimer = setTimeout(function () { _this.currentTime() }, 1000);
|
||
}
|
||
},
|
||
nowDate: function () {
|
||
var form = document.unix;
|
||
var timeNow = new Date();
|
||
form.timestamp.value = Math.round(timeNow.getTime() / 1000);
|
||
form.year.value = timeNow.getFullYear();
|
||
// form.month.value = timeNow.getMonth() + 1;
|
||
// form.day.value = timeNow.getDate();
|
||
// form.hour.value = timeNow.getHours();
|
||
// form.minute.value = timeNow.getMinutes();
|
||
// form.second.value = timeNow.getSeconds();
|
||
},
|
||
init: function () {
|
||
var _this = this;
|
||
_this.nowDate();
|
||
_this.currentTime();
|
||
$("#start").click(function () {
|
||
_this.currentTimeActive = 1;
|
||
_this.currentTime();
|
||
});
|
||
$("#stop").click(function () {
|
||
_this.currentTimeActive = 0;
|
||
clearTimeout(_this.unixTimer);
|
||
});
|
||
$("#refresh").click(_this.currentTime);
|
||
$("#unixtoutc8").click(function () { _this.unix2human() });
|
||
$("#utc8tounix").click(_this.human2unix);
|
||
$("#utc8tounix1").click(_this.human2unix1);
|
||
//$("form input").keydown(function (e) { entNumber(e, true); });
|
||
|
||
$("._ToolChoese").each(function () {
|
||
_select({
|
||
select: $(this).find(".SearChoese"),
|
||
options: $(this).find("ul.SearChoese-show"),
|
||
option: $(this).find("ul.SearChoese-show li a"),
|
||
t: "slide",
|
||
callback: function (_this) {
|
||
var id = $(_this).parents("ul").siblings("input[type=hidden]").attr("id");
|
||
switch (id) {
|
||
case "unixtoutc8sel": $("#unixtoutc8").click();
|
||
break;
|
||
case "unixtoutc81sel": $("#utc8tounix1").click();
|
||
break;
|
||
case "utc8tounixsel": $("#utc8tounix").click();
|
||
break;
|
||
}
|
||
}
|
||
});
|
||
});
|
||
}
|
||
},
|
||
hash: {
|
||
setHash: function (type, val, pwd) {
|
||
switch (type) {
|
||
case "sha1":
|
||
$("#p_div").addClass("autohide")
|
||
jQuery("#result").val(CryptoJS.SHA1(val));
|
||
break;
|
||
case "sha224":
|
||
$("#p_div").addClass("autohide")
|
||
jQuery("#result").val(CryptoJS.SHA224(val));
|
||
break;
|
||
case "sha256":
|
||
$("#p_div").addClass("autohide")
|
||
jQuery("#result").val(CryptoJS.SHA256(val));
|
||
break;
|
||
case "sha384":
|
||
$("#p_div").addClass("autohide")
|
||
jQuery("#result").val(CryptoJS.SHA384(val));
|
||
break;
|
||
case "sha512":
|
||
$("#p_div").addClass("autohide")
|
||
jQuery("#result").val(CryptoJS.SHA512(val));
|
||
break;
|
||
case "md5":
|
||
$("#p_div").addClass("autohide")
|
||
jQuery("#result").val(CryptoJS.MD5(val));
|
||
break;
|
||
case "hmacsha1":
|
||
$("#p_div").removeClass("autohide");
|
||
jQuery("#result").val(CryptoJS.HmacSHA1(val, pwd));
|
||
break;
|
||
case "hmacsha224":
|
||
$("#p_div").removeClass("autohide");
|
||
jQuery("#result").val(CryptoJS.HmacSHA224(val, pwd));
|
||
break;
|
||
case "hmacsha256":
|
||
$("#p_div").removeClass("autohide");
|
||
jQuery("#result").val(CryptoJS.HmacSHA256(val, pwd));
|
||
break;
|
||
case "hmacsha384":
|
||
$("#p_div").removeClass("autohide");
|
||
jQuery("#result").val(CryptoJS.HmacSHA384(val, pwd));
|
||
break;
|
||
case "hmacsha512":
|
||
$("#p_div").removeClass("autohide");
|
||
jQuery("#result").val(CryptoJS.HmacSHA512(val, pwd));
|
||
break;
|
||
case "hmacmd5":
|
||
$("#p_div").removeClass("autohide");
|
||
jQuery("#result").val(CryptoJS.HmacMD5(val, pwd));
|
||
break;
|
||
}
|
||
},
|
||
init: function () {
|
||
var _this = this;
|
||
$("#btnlist .GLOkBtn").click(function () {
|
||
var val = jQuery("#content").val();
|
||
var pwd = jQuery("#pwd").val();
|
||
if (val) {
|
||
_this.setHash($(this).attr("t"), val, pwd);
|
||
if (jQuery("#result").val()) $("#result").siblings().hide();
|
||
}
|
||
});
|
||
$("#clear").click(function () { tools.clear([getid("result"), getid("content")]) });
|
||
}
|
||
}
|
||
},
|
||
htmlcssjs: {
|
||
htmljs: function () {
|
||
var oresul = getid("oresult");
|
||
var osource = getid("osource");
|
||
oresul.onfocus = oresul.onkeyup = function () {
|
||
getid('re').value = getid('oresult').value.replace(/document.writeln\("/g, "").replace(/\\\"/g, "\"").replace(/\\\'/g, "\'").replace(/\\\//g, "\/").replace(/\\\\/g, "\\").replace(/"\);/g, "");
|
||
if (jQuery("#re").val()) $("#re").siblings().hide();
|
||
}
|
||
osource.onfocus = osource.onkeyup = function () {
|
||
getid('oresult2').value = "document.writeln(\"" + getid('osource').value.replace(/\\/g, "\\\\").replace(/\"/g, "'").replace(/\\/g, "\\/").replace(/\'/g, "\\\'").replace(/\"/g, "\\\"").split('\n').join("\");\ndocument.writeln(\"") + "\");";
|
||
if (jQuery("#oresult2").val()) $("#oresult2").siblings().hide();
|
||
}
|
||
},
|
||
htmlubb: {
|
||
pattern: function (str) {
|
||
//str = str.replace(/(\r\n|\n|\r)/ig, '');
|
||
str = str.replace(/<br[^>]*>/ig, '\n');
|
||
str = str.replace(/<p[^>\/]*\/>/ig, '\n');
|
||
//str = str.replace(/\[code\](.+?)\[\/code\]/ig, function($1, $2) {return phpcode($2);});
|
||
str = str.replace(/\son[\w]{3,16}\s?=\s*([\'\"]).+?\1/ig, '');
|
||
|
||
str = str.replace(/<hr[^>]*>/ig, '[hr]');
|
||
str = str.replace(/<(sub|sup|u|strike|b|i|pre)>/ig, '[$1]');
|
||
str = str.replace(/<\/(sub|sup|u|strike|b|i|pre)>/ig, '[/$1]');
|
||
str = str.replace(/<(\/)?strong>/ig, '[$1b]');
|
||
str = str.replace(/<(\/)?em>/ig, '[$1i]');
|
||
str = str.replace(/<(\/)?blockquote([^>]*)>/ig, '[$1blockquote]');
|
||
|
||
str = str.replace(/<img[^>]*smile=\"(\d+)\"[^>]*>/ig, '[s:$1]');
|
||
str = str.replace(/<img[^>]*src=[\'\"\s]*([^\s\'\"]+)[^>]*>/ig, '[img]' + '$1' + '[/img]');
|
||
str = str.replace(/<a[^>]*href=[\'\"\s]*([^\s\'\"]*)[^>]*>(.+?)<\/a>/ig, '[url=$1]' + '$2' + '[/url]');
|
||
//str = str.replace(/<h([1-6]+)([^>]*)>(.*?)<\/h\1>/ig,function($1,$2,$3,$4){return h($3,$4,$2);});
|
||
|
||
str = str.replace(/<[^>]*?>/ig, '');
|
||
str = str.replace(/&/ig, '&');
|
||
str = str.replace(/</ig, '<');
|
||
str = str.replace(/>/ig, '>');
|
||
|
||
return str;
|
||
},
|
||
up: function (str) {
|
||
str = str.replace(/</ig, '<');
|
||
str = str.replace(/>/ig, '>');
|
||
str = str.replace(/\n/ig, '<br />');
|
||
str = str.replace(/\[code\](.+?)\[\/code\]/ig, function ($1, $2) { return phpcode($2); });
|
||
|
||
str = str.replace(/\[hr\]/ig, '<hr />');
|
||
str = str.replace(/\[\/(size|color|font|backcolor)\]/ig, '</font>');
|
||
str = str.replace(/\[(sub|sup|u|i|strike|b|blockquote|li)\]/ig, '<$1>');
|
||
str = str.replace(/\[\/(sub|sup|u|i|strike|b|blockquote|li)\]/ig, '</$1>');
|
||
str = str.replace(/\[\/align\]/ig, '</p>');
|
||
str = str.replace(/\[(\/)?h([1-6])\]/ig, '<$1h$2>');
|
||
|
||
str = str.replace(/\[align=(left|center|right|justify)\]/ig, '<p align="$1">');
|
||
str = str.replace(/\[size=(\d+?)\]/ig, '<font size="$1">');
|
||
str = str.replace(/\[color=([^\[\<]+?)\]/ig, '<font color="$1">');
|
||
str = str.replace(/\[backcolor=([^\[\<]+?)\]/ig, '<font style="background-color:$1">');
|
||
str = str.replace(/\[font=([^\[\<]+?)\]/ig, '<font face="$1">');
|
||
str = str.replace(/\[list=(a|A|1)\](.+?)\[\/list\]/ig, '<ol type="$1">$2</ol>');
|
||
str = str.replace(/\[(\/)?list\]/ig, '<$1ul>');
|
||
|
||
str = str.replace(/\[s:(\d+)\]/ig, function ($1, $2) { return smilepath($2); });
|
||
str = str.replace(/\[img\]([^\[]*)\[\/img\]/ig, '<img src="$1" border="0" />');
|
||
str = str.replace(/\[url=([^\]]+)\]([^\[]+)\[\/url\]/ig, '<a href="$1">' + '$2' + '</a>');
|
||
str = str.replace(/\[url\]([^\[]+)\[\/url\]/ig, '<a href="$1">' + '$1' + '</a>');
|
||
return str;
|
||
},
|
||
htmltoubb: function () {
|
||
str = hcj.htmlubb.pattern(getid("Hsource").value);
|
||
getid("Uresult").value = str;
|
||
if (jQuery("#Uresult").val()) $("#Uresult").siblings().hide();
|
||
},
|
||
ubbtohtml: function () {
|
||
str = hcj.htmlubb.up(getid("Usource").value);
|
||
getid("Hresult").value = str;
|
||
if (jQuery("#Hresult").val()) $("#Hresult").siblings().hide();
|
||
},
|
||
init: function () {
|
||
var Hsource = getid("Hsource");
|
||
var Usource = getid("Usource");
|
||
var _this = this;
|
||
Hsource.onfocus = Hsource.onkeyup = _this.htmltoubb;
|
||
Usource.onfocus = Usource.onkeyup = _this.ubbtohtml;
|
||
}
|
||
|
||
},
|
||
htmlCodeCov: {
|
||
//html代码转换javascript代码
|
||
javascript: function () {
|
||
var input = document.getElementById("content").value;
|
||
if (input == "") {
|
||
document.getElementById("result").value = "<script language=\"JavaScript\">\n<!--\n/\/\-->\n</script>";
|
||
}
|
||
else {
|
||
output = "document.writeln(\"";
|
||
for (var c = 0; c < input.length; c++) {
|
||
if ((input.charAt(c) == "\n" || input.charAt(c) == "\r")) {
|
||
output += "\");";
|
||
if (c != input.length - 1) output += "\ndocument.writeln(\"";
|
||
c++;
|
||
}
|
||
else {
|
||
if (input.charAt(c) == "\"") {
|
||
output += "/\"";
|
||
}
|
||
else {
|
||
if (input.charAt(c) == "\\") {
|
||
output += "\\\\";
|
||
}
|
||
|
||
else {
|
||
output += input.charAt(c);
|
||
if (c == input.length - 1) output += "\");";
|
||
}
|
||
}
|
||
}
|
||
|
||
}
|
||
document.getElementById("result").value = "<script language=\"JavaScript\">\n<!--\n" + output + "\n/\/\-->\n</script>";
|
||
}
|
||
|
||
},
|
||
|
||
//html代码转换asp代码
|
||
asp: function () {
|
||
var input = document.getElementById("content").value;
|
||
if (input == "") {
|
||
document.getElementById("result").value = "<%\n%>";
|
||
}
|
||
else {
|
||
output = "Response.Write \"";
|
||
for (var c = 0; c < input.length; c++) {
|
||
if ((input.charAt(c) == "\n" || input.charAt(c) == "\r")) {
|
||
output += "\"";
|
||
if (c != input.length - 1) output += "\nResponse.Write \"";
|
||
c++;
|
||
}
|
||
else {
|
||
if (input.charAt(c) == "\"") {
|
||
output += "\"\"";
|
||
}
|
||
else {
|
||
if (input.charAt(c) == "\\") {
|
||
output += "\\\\";
|
||
}
|
||
|
||
else {
|
||
output += input.charAt(c);
|
||
if (c == input.length - 1) output += "\"";
|
||
}
|
||
}
|
||
}
|
||
|
||
}
|
||
document.getElementById("result").value = "<%\n" + output + "\n%>";
|
||
}
|
||
},
|
||
|
||
//html代码转换php代码
|
||
php: function () {
|
||
var input = document.getElementById("content").value;
|
||
if (input == "") {
|
||
document.getElementById("result").value = "<?php\n?>";
|
||
}
|
||
else {
|
||
output = "echo \"";
|
||
for (var c = 0; c < input.length; c++) {
|
||
if ((input.charAt(c) == "\n" || input.charAt(c) == "\r")) {
|
||
output += "\\n\";";
|
||
if (c != input.length - 1) output += "\necho \"";
|
||
c++;
|
||
}
|
||
else {
|
||
if (input.charAt(c) == "\"") {
|
||
output += "\\\"";
|
||
}
|
||
else {
|
||
if (input.charAt(c) == "\\") {
|
||
output += "\\\\";
|
||
}
|
||
|
||
else {
|
||
output += input.charAt(c);
|
||
if (c == input.length - 1) output += "\\n\";";
|
||
}
|
||
}
|
||
}
|
||
|
||
}
|
||
document.getElementById("result").value = "<?php\n" + output + "\n?>";
|
||
}
|
||
},
|
||
|
||
//html代码转换Jsp代码
|
||
Jsp: function () {
|
||
var input = document.getElementById("content").value;
|
||
if (input == "") {
|
||
document.getElementById("result").value = "<%\n%>";
|
||
}
|
||
else {
|
||
output = "out.println(\"";
|
||
for (var c = 0; c < input.length; c++) {
|
||
if ((input.charAt(c) == "\n" || input.charAt(c) == "\r")) {
|
||
output += "\");";
|
||
if (c != input.length - 1) output += "\nout.println(\"";
|
||
c++;
|
||
}
|
||
else {
|
||
if (input.charAt(c) == "\"") {
|
||
output += "\\\"";
|
||
}
|
||
else {
|
||
if (input.charAt(c) == "\\") {
|
||
output += "\\\\";
|
||
}
|
||
|
||
else {
|
||
output += input.charAt(c);
|
||
if (c == input.length - 1) output += "\");";
|
||
}
|
||
}
|
||
}
|
||
|
||
}
|
||
document.getElementById("result").value = "<%\n" + output + "\n%>";
|
||
}
|
||
},
|
||
|
||
//html代码转换Perl代码
|
||
Perl: function () {
|
||
var input = document.getElementById("content").value;
|
||
if (input == "") {
|
||
document.getElementById("result").value = output;
|
||
}
|
||
else {
|
||
output = "print \"";
|
||
for (var c = 0; c < input.length; c++) {
|
||
if ((input.charAt(c) == "\n" || input.charAt(c) == "\r")) {
|
||
output += "\\n\";";
|
||
if (c != input.length - 1) output += "\nprint \"";
|
||
c++;
|
||
}
|
||
else {
|
||
if (input.charAt(c) == "\"") {
|
||
output += "\\\"";
|
||
}
|
||
else {
|
||
if (input.charAt(c) == "\\") {
|
||
output += "\\\\";
|
||
}
|
||
|
||
else {
|
||
output += input.charAt(c);
|
||
if (c == input.length - 1) output += "\\n\";";
|
||
}
|
||
}
|
||
}
|
||
|
||
}
|
||
document.getElementById("result").value = output;
|
||
}
|
||
},
|
||
|
||
|
||
//html代码转换vbnet代码
|
||
vbnet: function () {
|
||
var input = document.getElementById("content").value;
|
||
if (input == "") {
|
||
document.getElementById("result").value = "<%\n%>";
|
||
}
|
||
else {
|
||
output = "Response.Write (\"";
|
||
for (var c = 0; c < input.length; c++) {
|
||
if ((input.charAt(c) == "\n" || input.charAt(c) == "\r")) {
|
||
output += "\");";
|
||
if (c != input.length - 1) output += "\nResponse.Write (\"";
|
||
c++;
|
||
}
|
||
else {
|
||
if (input.charAt(c) == "\"") {
|
||
output += "\"\"";
|
||
}
|
||
else {
|
||
if (input.charAt(c) == "\\") {
|
||
output += "\\\\";
|
||
}
|
||
|
||
else {
|
||
output += input.charAt(c);
|
||
if (c == input.length - 1) output += "\");";
|
||
}
|
||
}
|
||
}
|
||
|
||
}
|
||
document.getElementById("result").value = "<%\n" + output + "\n%>";
|
||
}
|
||
},
|
||
|
||
//html代码转换Sws代码
|
||
Sws: function () {
|
||
var input = document.getElementById("content").value;
|
||
if (input == "") {
|
||
document.getElementById("result").value = output;
|
||
}
|
||
else {
|
||
output = "STRING \"";
|
||
for (var c = 0; c < input.length; c++) {
|
||
if ((input.charAt(c) == "\n" || input.charAt(c) == "\r")) {
|
||
output += "\"";
|
||
if (c != input.length - 1) output += "\nSTRING \"";
|
||
c++;
|
||
}
|
||
else {
|
||
if (input.charAt(c) == "\"") {
|
||
output += "\\\"";
|
||
}
|
||
else {
|
||
if (input.charAt(c) == "\\") {
|
||
output += "\\\\";
|
||
}
|
||
|
||
else {
|
||
output += input.charAt(c);
|
||
if (c == input.length - 1) output += "\"";
|
||
}
|
||
}
|
||
}
|
||
|
||
}
|
||
document.getElementById("result").value = output;
|
||
}
|
||
},
|
||
|
||
//开始转换按钮
|
||
htmlCov: function () {
|
||
var _this = hcj.htmlCodeCov;
|
||
var type = getid("html").value;
|
||
switch (type) {
|
||
case "javascript": _this.javascript(); break;
|
||
case "asp": _this.asp(); break;
|
||
case "php": _this.php(); break;
|
||
case "jsp": _this.Jsp(); break;
|
||
case "perl": _this.Perl(); break;
|
||
case "sws": _this.Sws(); break;
|
||
case "vbnet": _this.vbnet(); break;
|
||
default: getid("result").value = '转换错误'; break;
|
||
}
|
||
if (jQuery("#result").val()) $("#result").siblings().hide();
|
||
},
|
||
init: function (path) {
|
||
var _this = this;
|
||
$("#trans").click(_this.htmlCov);
|
||
tools.clipfn(path, "clip");
|
||
$("._ToolChoese").each(function () {
|
||
_select({
|
||
select: $(this).find(".SearChoese"),
|
||
options: $(this).find("ul.SearChoese-show"),
|
||
option: $(this).find("ul.SearChoese-show li a"),
|
||
t: "slide",
|
||
callback: _this.htmlCov//下拉选项
|
||
});
|
||
});
|
||
$("#clear").click(function () { tools.clear([getid("content"), getid("result")]) });
|
||
}
|
||
|
||
},
|
||
jsCodeConfusion: function (path) {
|
||
$("#confused").click(function () {
|
||
var code = document.getElementById("JScode").value;
|
||
var xx = new CLASS_CONFUSION(code);
|
||
var a = new Date();
|
||
getid("ConfusionAfterCode").value = xx.confusion();
|
||
if (jQuery("#ConfusionAfterCode").val()) $("#ConfusionAfterCode").siblings().hide();
|
||
});
|
||
tools.clipfn(path, "clip");
|
||
$("#clear").click(function () { tools.clear([getid("JScode"), getid("ConfusionAfterCode")]) });
|
||
},
|
||
jstool: {
|
||
jsonData: { action: '', content: '', enkey: '' },
|
||
jsbeauty: function (_this) {
|
||
var source = jQuery('#txtInitCode').val().trim(),
|
||
output,
|
||
opts = {};
|
||
|
||
opts.indent_size = 4;
|
||
opts.indent_char = ' ';
|
||
opts.max_preserve_newlines = 5;
|
||
opts.preserve_newlines = opts.max_preserve_newlines !== "-1";
|
||
opts.keep_array_indentation = false;
|
||
opts.break_chained_methods = false;
|
||
opts.indent_scripts = 'normal';
|
||
opts.brace_style = 'collapse';
|
||
opts.space_before_conditional = true;
|
||
opts.unescape_strings = false;
|
||
opts.jslint_happy = false;
|
||
opts.wrap_line_length = 0;
|
||
opts.space_after_anon_function = true;
|
||
source = _this.unpacker_filter(source, _this);
|
||
output = js_beautify(source, opts);
|
||
jQuery('#txtResultCode').val(output);
|
||
if (jQuery("#txtResultCode").val()) $("#txtResultCode").siblings("b").hide();
|
||
},
|
||
unpacker_filter: function (source) {
|
||
var trailing_comments = '',
|
||
comment = '',
|
||
unpacked = '',
|
||
found = false;
|
||
|
||
do {
|
||
found = false;
|
||
if (/^\s*\/\*/.test(source)) {
|
||
found = true;
|
||
comment = source.substr(0, source.indexOf('*/') + 2);
|
||
source = source.substr(comment.length).replace(/^\s+/, '');
|
||
trailing_comments += comment + "\n";
|
||
} else if (/^\s*\/\//.test(source)) {
|
||
found = true;
|
||
comment = source.match(/^\s*\/\/.*/)[0];
|
||
source = source.substr(comment.length).replace(/^\s+/, '');
|
||
trailing_comments += comment + "\n";
|
||
}
|
||
} while (found);
|
||
|
||
var unpackers = [P_A_C_K_E_R, Urlencoded, MyObfuscate];
|
||
for (var i = 0; i < unpackers.length; i++) {
|
||
if (unpackers[i].detect(source)) {
|
||
unpacked = unpackers[i].unpack(source);
|
||
if (unpacked != source) {
|
||
source = this.unpacker_filter(unpacked);
|
||
}
|
||
}
|
||
}
|
||
return trailing_comments + source;
|
||
},
|
||
ajaxdata: function (_this) {
|
||
jQuery.ajax({
|
||
type: 'POST',
|
||
url: '/AjaxSeo.aspx?t=jsformat',
|
||
data: _this.jsonData,
|
||
beforeSend: function () {
|
||
jQuery("#txtResultCode").val("");
|
||
jQuery("#loading").removeClass("autohide");
|
||
},
|
||
dataType: 'jsonp',
|
||
success: function (json) {
|
||
jQuery("#loading").addClass("autohide");
|
||
if (json.state == 0) {
|
||
alert(json.msg);
|
||
}
|
||
else {
|
||
jQuery("#txtResultCode").val(json.txt);
|
||
if (jQuery("#txtResultCode").val()) $("#txtResultCode").siblings("b").hide();
|
||
}
|
||
}
|
||
});
|
||
},
|
||
init: function (path, key) {
|
||
var _this = this;
|
||
_this.jsonData.enkey = key;
|
||
jQuery("#btndiv input[ref]").click(function () {
|
||
_this.jsonData.action = jQuery(this).attr("ref");
|
||
_this.jsonData.content = jQuery.trim(jQuery("#txtInitCode").val());
|
||
if (_this.jsonData.content == '') {
|
||
alert('请输入要转换的内容');
|
||
return;
|
||
}
|
||
switch (_this.jsonData.action) {
|
||
case "beauty": _this.jsbeauty(_this); return;
|
||
case "filtercomment": _this.ajaxdata(_this); break;
|
||
case "basiccompress": _this.ajaxdata(_this); break;
|
||
case "encodecompress": _this.ajaxdata(_this); break;
|
||
case "decodebeauty": _this.jsbeauty(_this); return;
|
||
}
|
||
});
|
||
tools.clipfn(path, "clip");
|
||
$("#clear").click(function () { tools.clear([getid("txtInitCode"), getid("txtResultCode")]) });
|
||
}
|
||
},
|
||
jsFormat: function (path) {
|
||
$("#beautify").click(function () {
|
||
document.getElementById('beautify').disabled = true;
|
||
js_source = document.getElementById('content').value.replace(/^\s+/, '');
|
||
tabsize = document.getElementById('tabsize').value;
|
||
tabchar = ' ';
|
||
if (tabsize == 1) {
|
||
tabchar = '\t';
|
||
}
|
||
var regEmptyTag = /(<([^\/][^>|^\/>].*)>)(\s*)?(<\/([^>]*)>)/g;
|
||
var c = "";
|
||
if (js_source && js_source.charAt(0) === '<') {
|
||
//document.getElementById('result').value = style_html(js_source, tabsize, tabchar, 80);
|
||
c = style_html(js_source, tabsize, tabchar, 80);
|
||
} else {
|
||
//document.getElementById('result').value = js_beautify(js_source, tabsize, tabchar);
|
||
c = js_beautify(js_source, tabsize, tabchar);
|
||
}
|
||
document.getElementById('result').value = c.replace(regEmptyTag, '$1$4');
|
||
if (jQuery("#result").val()) $("#result").siblings().hide();
|
||
document.getElementById('beautify').disabled = false;
|
||
return false;
|
||
});
|
||
$("#pack0").click(function (base64) {
|
||
pack_js(0);
|
||
});
|
||
$("#pack1").click(function (base64) {
|
||
pack_js(1);
|
||
});
|
||
tools.clipfn(path, "clip");
|
||
$("#clear").click(function () { tools.clear([getid("result"), getid("content")]) });
|
||
function pack_js(base64) {
|
||
var input = document.getElementById('content').value;
|
||
var packer = new Packer;
|
||
if (base64) {
|
||
var output = packer.pack(input, 1, 0);
|
||
} else {
|
||
var output = packer.pack(input, 0, 0);
|
||
}
|
||
document.getElementById('result').value = output;
|
||
if (jQuery("#result").val()) $("#result").siblings().hide();
|
||
}
|
||
}
|
||
},
|
||
jsonTool: {
|
||
jsontocsharp: {
|
||
init: function (path) {
|
||
var _this = this;
|
||
|
||
$(".ToolChoesecj").each(function () {
|
||
_select({
|
||
select: $(this).find(".SearChoese"),
|
||
options: $(this).find("ul.SearChoese-show"),
|
||
option: $(this).find("ul.SearChoese-show li a"),
|
||
t: "slide",
|
||
parents: $(".ToolChoesecj"),
|
||
callback: function () {
|
||
if ($("#showtype").val() == 0)
|
||
$(".javawh").addClass("autohide");
|
||
else
|
||
$(".javawh").removeClass("autohide");
|
||
}
|
||
});
|
||
});
|
||
|
||
tools.clipfn(path);
|
||
$("#2csharp").click(function () {
|
||
if (!$("#jsonval").val().trim()) {
|
||
alert("请填写JSON");
|
||
return false;
|
||
}
|
||
try {
|
||
var v = eval("(" + document.getElementById("jsonval").value + ")");
|
||
var res = "";
|
||
if ($("#showtype").val() == 0)
|
||
res = _this.JSON2CSharp.convert(v);
|
||
else
|
||
res = _this.JSON2POJO.convert(v);
|
||
$("#result").val(res).siblings("b").hide();
|
||
} catch (e) {
|
||
alert("生成C#实体类异常,请检查JSON是否错误。");
|
||
}
|
||
});
|
||
$("#testjson").click(function () {
|
||
var testjson = '{\r\n "name":"站长工具",\r\n "url":"http://tool.chinaz.com",\r\n "address":{\r\n "city":"厦门",\r\n "country":"中国"\r\n },\r\n "arrayBrowser":[{\r\n "name":"Google",\r\n "url":"http://www.google.com"\r\n },\r\n {\r\n "name":"Baidu",\r\n "url":"http://www.baidu.com"\r\n },\r\n {\r\n "name":"SoSo",\r\n "url":"http://www.SoSo.com"\r\n }]\r\n}';
|
||
$("#jsonval").val(testjson).siblings("b").hide();
|
||
});
|
||
$("#clear").click(function () {
|
||
tools.clear([getid('result'), getid('jsonval')]);
|
||
});
|
||
},
|
||
JSON2CSharp: {
|
||
_allClass: [],
|
||
_genClassCode: function (obj, name) {
|
||
var clas = "public class {0}\r\n{\r\n".format(name || "Root");
|
||
for (var n in obj) {
|
||
var v = obj[n];
|
||
n = n.trim();
|
||
//变量定义规则
|
||
n = n.replace(/[^\w]+/ig, '_');
|
||
if (/^\d+/.test(n))
|
||
n = "_" + n;
|
||
clas += " {0} public {1} {2} { get; set; }\r\n".format(this._genComment(v, n), this._genTypeByProp(n, v), n);
|
||
}
|
||
clas += "}\r\n";
|
||
this._allClass.push(clas);
|
||
return this._allClass.join("\r\n");
|
||
},
|
||
_genTypeByProp: function (name, val) {
|
||
try {
|
||
if (typeof val == "string") {
|
||
var regdt = /^(\d{4})(-|\/|年)(\d{2})(-|\/|月)(\d{2})(日)?(\s((\d{1,2}):)?((\d{1,2}):)?(\d{1,2})?)?$/
|
||
if (regdt.test(val.trim()))
|
||
val = new Date(val);
|
||
}
|
||
} catch (e) {
|
||
|
||
}
|
||
switch (Object.prototype.toString.apply(val)) {
|
||
case "[object Number]":
|
||
{
|
||
return val.toString().indexOf(".") > -1 ? "double" : "int";
|
||
}
|
||
case "[object Date]":
|
||
{
|
||
return "DateTime";
|
||
}
|
||
case "[object Object]":
|
||
{
|
||
name = name.substring(0, 1).toUpperCase() + name.substring(1);
|
||
this._genClassCode(val, name);
|
||
return name;
|
||
}
|
||
case "[object Array]":
|
||
{
|
||
return "List<{0}>".format(this._genTypeByProp(name, val[0]));
|
||
}
|
||
case "[object Boolean]":
|
||
{
|
||
return "bool";
|
||
}
|
||
default:
|
||
{
|
||
return "string";
|
||
}
|
||
}
|
||
},
|
||
_genComment: function (val, n) {
|
||
//var commm = typeof (val) == "string" && /.*[\u4e00-\u9fa5]+.*$/.test(val) ? val : "";
|
||
var s = Object.prototype.toString.apply(val);
|
||
var commm = typeof (val) == "string" ? val : n.substring(0, 1).toUpperCase() + n.substring(1); ;
|
||
return "/// <summary>\r\n /// " + commm + "\r\n /// </summary>\r\n";
|
||
},
|
||
convert: function (jsonObj) {
|
||
this._allClass = [];
|
||
return this._genClassCode(jsonObj);
|
||
}
|
||
},
|
||
JSON2POJO: {
|
||
_allClass: [],
|
||
_genClassCode: function (obj, name) {
|
||
var packageval = $("#packageval").val(), isfill = $("#isfill").prop("checked");
|
||
var clas = "";
|
||
var str = "";
|
||
var privateAttr = "", publicAttr = "", fill = "", filllist = "";
|
||
if (isfill) {
|
||
fill += " public static {0} fill(JSONObject jsonobj){\r\n".format(name || "Root");
|
||
fill += " {0} entity = new {0}();\r\n".format(name || "Root");
|
||
|
||
filllist += " public static List<{0}> fillList(JSONArray jsonarray) {\r\n";
|
||
filllist += " if (jsonarray == null || jsonarray.size() == 0)\r\n";
|
||
filllist += " return null;\r\n";
|
||
filllist += " List<{0}> olist = new ArrayList<{0}>();\r\n";
|
||
filllist += " for (int i = 0; i < jsonarray.size(); i++) {\r\n";
|
||
filllist += " olist.add(fill(jsonarray.getJSONObject(i)));\r\n";
|
||
filllist += " }\r\n";
|
||
filllist += " return olist;\r\n";
|
||
filllist += " }\r\n";
|
||
filllist = filllist.format(name || "Root");
|
||
}
|
||
for (var n in obj) {
|
||
var v = obj[n];
|
||
n = n.trim();
|
||
//变量定义规则
|
||
n = n.replace(/[^\w]+/ig, '_');
|
||
if (/^\d+/.test(n))
|
||
n = "_" + n;
|
||
var tp = this._genTypeByProp(n, v);
|
||
var _type = tp.type;
|
||
if (tp.islist) {
|
||
if (isfill)
|
||
str = "package {1};\r\nimport java.util.ArrayList;\r\nimport java.util.List;\r\nimport Net.sf.json.JSONObject;\r\nimport Net.sf.json.JSONArray;\r\npublic class {0}\r\n{\r\n".format(name || "Root", packageval);
|
||
else
|
||
str = "package {1};\r\nimport java.util.ArrayList;\r\nimport java.util.List;\r\npublic class {0}\r\n{\r\n".format(name || "Root", packageval, "\r\nimport java.util.List;");
|
||
}
|
||
privateAttr += " private {0} {1};\r\n\r\n".format(_type, n);
|
||
var firstChar = n.substring(0, 1).toUpperCase() + n.substring(1);
|
||
publicAttr += " public void set{2}({0} {1}){\r\n this.{1} = {1};\r\n }\r\n".format(_type, n, firstChar);
|
||
publicAttr += " public {0} get{2}(){\r\n return this.{1};\r\n }\r\n".format(_type, n, firstChar);
|
||
|
||
if (isfill) {
|
||
fill += " if (jsonobj.containsKey(\"{0}\")) {\r\n".format(n);
|
||
var _typefirstChartoUpper = _type.substring(0, 1).toUpperCase() + _type.substring(1);
|
||
fill += " entity.set{1}(jsonobj.get{2}(\"{0}\")); \r\n }\r\n".format(n, n.substring(0, 1).toUpperCase() + n.substring(1), _typefirstChartoUpper.indexOf("List") >= 0 ? "JSONArray" : _typefirstChartoUpper);
|
||
}
|
||
}
|
||
clas += "==================================\r\n"
|
||
if (!str) {
|
||
if (isfill)
|
||
clas += "package {1};\r\nimport Net.sf.json.JSONObject;\r\nimport Net.sf.json.JSONArray;\r\npublic class {0}\r\n{\r\n".format(name || "Root", packageval);
|
||
else
|
||
clas += "package {1};\r\npublic class {0}\r\n{\r\n".format(name || "Root", packageval);
|
||
}
|
||
else
|
||
clas += str;
|
||
if (isfill) {
|
||
fill += " return entity;\r\n }\r\n";
|
||
}
|
||
clas += privateAttr;
|
||
clas += publicAttr;
|
||
clas += fill;
|
||
clas += filllist;
|
||
clas += "}\r\n";
|
||
this._allClass.push(clas);
|
||
return this._allClass.join("\r\n");
|
||
},
|
||
_genTypeByProp: function (name, val) {
|
||
try {
|
||
if (typeof val == "string") {
|
||
//xxxx(-|/|年)xx(-|/|月)xx(-|/|日) xx:xx:xx
|
||
var regdt = /^(\d{4})(-|\/|年)(\d{2})(-|\/|月)(\d{2})(日)?(\s((\d{1,2}):)?((\d{1,2}):)?(\d{1,2})?)?$/
|
||
if (regdt.test(val.trim()))
|
||
val = new Date(val);
|
||
}
|
||
} catch (e) {
|
||
|
||
}
|
||
switch (Object.prototype.toString.apply(val)) {
|
||
case "[object Number]":
|
||
{
|
||
return { type: val.toString().indexOf(".") > -1 ? "double" : "int" };
|
||
}
|
||
case "[object Date]":
|
||
{
|
||
return { type: "DateTime" };
|
||
}
|
||
case "[object Object]":
|
||
{
|
||
name = name.substring(0, 1).toUpperCase() + name.substring(1);
|
||
this._genClassCode(val, name);
|
||
return { type: name };
|
||
}
|
||
case "[object Array]":
|
||
{
|
||
return { type: "List<{0}>".format(this._genTypeByProp(name, val[0]).type), islist: true };
|
||
}
|
||
case "[object Boolean]":
|
||
{
|
||
return { type: "boolean" };
|
||
}
|
||
default:
|
||
{
|
||
return { type: "String" };
|
||
}
|
||
}
|
||
},
|
||
convert: function (jsonObj) {
|
||
this._allClass = [];
|
||
return this._genClassCode(jsonObj);
|
||
}
|
||
}
|
||
},
|
||
jsontoxml: function () {
|
||
$("#2json").click(function () {
|
||
var xmlobjtree = new XML.ObjTree();
|
||
var dumper = new JKL.Dumper();
|
||
var xmlText = $("#xmljsonval").val();
|
||
if (!xmlText) {
|
||
alert("请输入XML字符串");
|
||
$("#xmljsonval").focus();
|
||
return false;
|
||
}
|
||
xmlText = xmlText.replace(/>/g, ">").replace(/</g, "<").replace(/"/g, "\""); //HTML转义
|
||
var tree = xmlobjtree.parseXML(xmlText);
|
||
if (tree) {
|
||
if (!tree.html)
|
||
$("#result").val(dumper.dump(tree)).siblings("b").hide();
|
||
else {
|
||
alert("请检查XML是否错误。");
|
||
$("#xmljsonval").focus();
|
||
}
|
||
}
|
||
});
|
||
|
||
$("#2xml").click(function () {
|
||
var xmlobjtree = new XML.ObjTree();
|
||
if (!$("#xmljsonval").val()) {
|
||
alert("请输入JSON字符串");
|
||
$("#xmljsonval").focus();
|
||
return false;
|
||
}
|
||
try {
|
||
var json = eval("(" + $("#xmljsonval").val() + ")");
|
||
$("#result").val(formatXml(xmlobjtree.writeXML(json))).siblings("b").hide();
|
||
} catch (e) {
|
||
alert("转XML异常,请检查JSON是否错误。");
|
||
$("#xmljsonval").focus();
|
||
}
|
||
});
|
||
|
||
$("#clear").click(function () {
|
||
tools.clear([getid('xmljsonval'), getid('result')]);
|
||
});
|
||
|
||
},
|
||
jsontoget: function () {
|
||
$("#getjsonval").bind("keyup paste", function (e) {
|
||
var obj = $(this);
|
||
var etype = e.type;
|
||
setTimeout(function () {
|
||
if (etype == "paste")
|
||
obj.val(obj.val().trim().replace(/(\r|\n|\t|\s)/g, ""));
|
||
}, 100);
|
||
});
|
||
$("#2json").click(function () {
|
||
var val = $("#getjsonval").val();
|
||
val = val.replace(/&/g, '","').replace(/=/g, '":"');
|
||
val = '{"' + val + '"}';
|
||
$("#result").val(val).siblings("b").hide();
|
||
});
|
||
$("#2get").click(function () {
|
||
var val = $("#getjsonval").val();
|
||
val = val.replace(/\t/g, "");
|
||
val = val.replace(/\"/g, "").replace("{", "").replace("}", "").replace(",", "&").replace(":", "=");
|
||
val = val.replace(/\"/g, "").replace(/{/g, "").replace(/}/g, "").replace(/,/g, "&").replace(/:/g, "=");
|
||
$("#result").val(val).siblings("b").hide();
|
||
});
|
||
$("#clear").click(function () {
|
||
tools.clear([getid('getjsonval'), getid('result')]);
|
||
});
|
||
},
|
||
exceltojson: {
|
||
getresult: function (totype) {
|
||
var splitchar = $("#splitchar").val() || /\t/;
|
||
var txt = $("#excelval").val();
|
||
if (!txt.trim()) {
|
||
alert("请输入EXCEL格式的字符串。");
|
||
return false;
|
||
}
|
||
var datas = txt.split("\n");
|
||
var html = "[\n";
|
||
var keys = [];
|
||
for (var i = 0; i < datas.length; i++) {
|
||
var ds = datas[i].split(splitchar);
|
||
if (i == 0) {
|
||
if (totype == "0") {
|
||
keys = ds;
|
||
} else {
|
||
html += "[";
|
||
for (var j = 0; j < ds.length; j++) {
|
||
html += '"' + ds[j] + '"';
|
||
if (j < ds.length - 1) {
|
||
html += ",";
|
||
}
|
||
}
|
||
html += "],\n";
|
||
}
|
||
} else {
|
||
if (ds.length == 0) continue;
|
||
if (ds.length == 1) {
|
||
ds[0] == "";
|
||
continue;
|
||
}
|
||
html += totype == "0" ? "{" : "[";
|
||
for (var j = 0; j < ds.length; j++) {
|
||
var d = ds[j];
|
||
if (d == "") continue;
|
||
if (totype == "0") {
|
||
html += '"' + keys[j] + '":"' + d + '"';
|
||
} else {
|
||
html += '"' + d + '"';
|
||
}
|
||
if (j < ds.length - 1) {
|
||
html += ',';
|
||
}
|
||
}
|
||
html += totype == "0" ? "}" : "]";
|
||
if (i < datas.length - 1)
|
||
html += ",\n";
|
||
}
|
||
}
|
||
if (html&&html.lastIndexOf(",\n")==html.length-2) {
|
||
html = html.substring(0, html.lastIndexOf(",\n"));
|
||
}
|
||
html += "\n]";
|
||
$("#result").val(html).siblings("b").hide();
|
||
},
|
||
init: function () {
|
||
var _this = this;
|
||
$("#2object").click(function () {
|
||
_this.getresult(0);
|
||
});
|
||
$("#2array").click(function () {
|
||
_this.getresult(1);
|
||
});
|
||
$("#clear").click(function () {
|
||
tools.clear([getid('excelval'), getid('result')]);
|
||
});
|
||
}
|
||
},
|
||
jsonescape: {
|
||
//ctype: 1压缩 2转义 3压缩转义 4去除转义
|
||
escapezip: function (ctype) {
|
||
var txtA = document.getElementById("jsonval");
|
||
var text = txtA.value;
|
||
if (!text.trim()) {
|
||
alert("请输入JSON字符串。");
|
||
return false;
|
||
}
|
||
if (ctype == 1 || ctype == 3) {
|
||
text = text.split("\n").join(" ");
|
||
var t = [];
|
||
var inString = false;
|
||
for (var i = 0, len = text.length; i < len; i++) {
|
||
var c = text.charAt(i);
|
||
if (inString && c === inString) {
|
||
if (text.charAt(i - 1) !== '\\') {
|
||
inString = false;
|
||
}
|
||
} else if (!inString && (c === '"' || c === "'")) {
|
||
inString = c;
|
||
} else if (!inString && (c === ' ' || c === "\t")) {
|
||
c = '';
|
||
}
|
||
t.push(c);
|
||
}
|
||
text = t.join('');
|
||
}
|
||
if (ctype == 2 || ctype == 3) {
|
||
text = text.replace(/\\/g, "\\\\").replace(/\"/g, "\\\"");
|
||
}
|
||
if (ctype == 4) {
|
||
text = text.replace(/\\\\/g, "\\").replace(/\\\"/g, '\"');
|
||
}
|
||
txtA.value = text;
|
||
},
|
||
GB2312UnicodeConverter: {
|
||
ToUnicode: function (str) {
|
||
var txt = escape(str).toLocaleLowerCase().replace(/%u/gi, '\\u');
|
||
return txt.replace(/%7b/gi, '{').replace(/%7d/gi, '}').replace(/%3a/gi, ':').replace(/%2c/gi, ',').replace(/%27/gi, '\'').replace(/%22/gi, '"').replace(/%5b/gi, '[').replace(/%5d/gi, ']').replace(/%3D/gi, '=').replace(/%20/gi, ' ').replace(/%3E/gi, '>').replace(/%3C/gi, '<').replace(/%3F/gi, '?');
|
||
},
|
||
ToGB2312: function (str) {
|
||
return unescape(str.replace(/\\u/gi, '%u'));
|
||
}
|
||
},
|
||
utozh: function () {
|
||
var _this = this;
|
||
var txtA = document.getElementById("jsonval");
|
||
var text = txtA.value.trim();
|
||
if (!text) {
|
||
alert("请输入JSON字符串。");
|
||
return false;
|
||
}
|
||
txtA.value = _this.GB2312UnicodeConverter.ToGB2312(text);
|
||
},
|
||
zhtou: function () {
|
||
var _this = this;
|
||
var txtA = document.getElementById("jsonval");
|
||
var text = txtA.value.trim();
|
||
if (!text) {
|
||
alert("请输入JSON字符串。");
|
||
return false;
|
||
}
|
||
txtA.value = _this.GB2312UnicodeConverter.ToUnicode(text);
|
||
},
|
||
cntoenehar: function () {
|
||
var txtA = document.getElementById("jsonval");
|
||
var str = txtA.value;
|
||
str = str.replace(/\’|\‘/g, "'").replace(/\“|\”/g, "\"");
|
||
str = str.replace(/\【/g, "[").replace(/\】/g, "]").replace(/\{/g, "{").replace(/\}/g, "}");
|
||
str = str.replace(/,/g, ",").replace(/:/g, ":");
|
||
txtA.value = str;
|
||
},
|
||
init: function () {
|
||
$('#jsonval').linedtextarea({ resize: "none" });
|
||
var _this = this;
|
||
$("#zip").click(function () {
|
||
_this.escapezip(1);
|
||
});
|
||
$("#escape").click(function () {
|
||
_this.escapezip(2);
|
||
});
|
||
$("#zipescape").click(function () {
|
||
_this.escapezip(3);
|
||
});
|
||
$("#delescape").click(function () {
|
||
_this.escapezip(4);
|
||
});
|
||
$("#u2zh-cn").click(function () {
|
||
_this.utozh();
|
||
});
|
||
$("#zh-cn2u").click(function () {
|
||
_this.zhtou();
|
||
});
|
||
$("#zh-cn2enchar").click(function () {
|
||
_this.cntoenehar();
|
||
});
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
|
||
var tc = tools.transcoding;
|
||
var to = tools.other;
|
||
var ted = tools.encryptDecode;
|
||
var hcj = tools.htmlcssjs;
|
||
var jsontool = tools.jsonTool; |