From 0a15e303c10b91ae6339d429aedd53134d072054 Mon Sep 17 00:00:00 2001 From: YouWei Zhao Date: Tue, 26 Dec 2017 00:55:41 +0800 Subject: [PATCH] =?UTF-8?q?=E9=87=8D=E6=9E=84drawMapGui?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- _server/fs.js | 101 +++++++++ _server/fsTest_cs.html | 104 +-------- drawMapGUI.html | 493 +++++++++++++++++++++-------------------- 3 files changed, 360 insertions(+), 338 deletions(-) create mode 100644 _server/fs.js diff --git a/_server/fs.js b/_server/fs.js new file mode 100644 index 00000000..3384aa8e --- /dev/null +++ b/_server/fs.js @@ -0,0 +1,101 @@ +(function(){ + fs = {}; + var postsomething = function (data,_ip,callback) { + //callback:function(err, data) + //data:字符串 + var xhr = new XMLHttpRequest(); + xhr.onreadystatechange = function(){ + switch(xhr.readyState){ + case 4 : + if ((xhr.status >= 200 && xhr.status < 300) || xhr.status == 304) { + if (Boolean(callback)){ + if (xhr.responseText.slice(0,6)=='error:'){ + callback(xhr.responseText,null); + } else { + callback(null,xhr.responseText); + } + } + //printf(xhr.responseText) + }else{ + if (Boolean(callback))callback(xhr.status,null); + //printf('error:' + xhr.status+'
'+(xhr.responseText||'')); + } + break; + } + } + xhr.open('post',_ip); + xhr.setRequestHeader('Content-Type','text/plain'); + if(typeof(data)==typeof([][0]) || data==null)data=JSON.stringify({1:2}); + xhr.send(data); + } + + fs.readFile = function (filename,encoding,callback) { + if (typeof(filename)!=typeof('')) + throw 'Type Error in fs.readFile'; + if (encoding=='utf-8'){ + //读文本文件 + //filename:支持"/"做分隔符 + //callback:function(err, data) + //data:字符串 + var data=''; + data+='type=utf8&'; + data+='name='+filename; + postsomething(data,'/readFile',callback); + return; + } + if (encoding=='base64'){ + //读二进制文件 + //filename:支持"/"做分隔符 + //callback:function(err, data) + //data:base64字符串 + var data=''; + data+='type=base64&'; + data+='name='+filename; + postsomething(data,'/readFile',callback); + return; + } + throw 'Type Error in fs.readFile'; + } + + fs.writeFile = function (filename,datastr,encoding,callback) { + if (typeof(filename)!=typeof('') || typeof(datastr)!=typeof('')) + throw 'Type Error in fs.writeFile'; + if (encoding=='utf-8'){ + //写文本文件 + //filename:支持"/"做分隔符 + //callback:function(err) + //datastr:字符串 + var data=''; + data+='type=utf8&'; + data+='name='+filename; + data+='&value='+datastr; + postsomething(data,'/writeFile',callback); + return; + } + if (encoding=='base64'){ + //写二进制文件 + //filename:支持"/"做分隔符 + //callback:function(err) + //datastr:base64字符串 + var data=''; + data+='type=base64&'; + data+='name='+filename; + data+='&value='+datastr; + postsomething(data,'/writeFile',callback); + return; + } + throw 'Type Error in fs.writeFile'; + } + + fs.readdir = function (path, callback) { + //callback:function(err, data) + //path:支持"/"做分隔符,不以"/"结尾 + //data:[filename1,filename2,..] filename是字符串,只包含文件不包含目录 + if (typeof(path)!=typeof('')) + throw 'Type Error in fs.readdir'; + var data=''; + data+='name='+path; + postsomething(data,'/listFile',function(err, data){callback(err,JSON.parse(data))}); + return; + } +})(); \ No newline at end of file diff --git a/_server/fsTest_cs.html b/_server/fsTest_cs.html index 0ae73da0..fc53ee41 100644 --- a/_server/fsTest_cs.html +++ b/_server/fsTest_cs.html @@ -2,109 +2,7 @@ - + - - - - + + + + +}//core 加载['terrains','animates', 'enemys', 'items', 'npcs'] - - - - - + + +