RSS
 

Archive for the ‘JavaScript’ Category

检测HTML5和CSS3支持的情况

04 Jul

今天闲逛,看到一个非常详细的检测HTML5跟CSS3支持情况检测的代码列表
http://diveintohtml5.org/everything.html

放在这里备着,以便自己可查:)

还有一个专门做这个检测的库程序 Modernizr,这个就稍微有点点大,8K左右,平常还是根据自己需要做检测好了

补充一个速查表网站:
http://www.findmebyip.com/litmus/#target-selector

和一个HTML5做的PPT,同时也是个不错的介绍
http://html5cn.net/demo/132/demo.html

使用的标签: CSS3, HTML5, JavaScript, Modernizr
 
1 Comment

Posted in JavaScript

 

给MapABC的API增加自定义tip的扩展

10 Jun

之前项目里用谷歌地图的API开发地图应用,其中有用到自定义Tip的需求,寻觅之找到了一个给GMarker扩展的tip类,叫extinfoWindow,用的挺好

后来谷歌哥哥走了,不得已项目也转到MapABC上了,而MapABC的扩展几乎属于没有的状态,特别是Flash版的,几乎很难自定义一些东西
还好MapABC支持fromLngLatToContainerPixel,使得自己开发一个extinfoWindow变成可能,所以把GMap里的extinfoWindow的名字,以及概念抄袭了一把,改成了适用于MapABC的版本

运行截图:
extinfoWindow运行截图
Read the rest of this entry »

使用的标签: api, extinfowindow, gmap, google, infowindow, JavaScript, mapabc, tip, 扩展
 
 

UTF8和Unicode相互转换的函数

27 Oct

这是重发以前的老博文

function UnicodeToUTF8(strInUni) {
	if (null == strInUni) returnnull;
	var strUni = String(strInUni);
	var strUTF8 = String();
	for (var i = 0; i < strUni.length; i++) {
		var wchr = strUni.charCodeAt(i);
		if (wchr < 0x80) {
			strUTF8 += strUni.charAt(i);
		}
		else if (wchr < 0x800) {
			var chr1 = wchr & 0xff;
			var chr2 = (wchr >> 8) & 0xff;
			strUTF8 += String.fromCharCode(0xC0 | (chr2 << 2) | ((chr1 >> 6) & 0x3));
			strUTF8 += String.fromCharCode(0x80 | (chr1 & 0x3F));
		}
		else {
			var chr1 = wchr & 0xff;
			var chr2 = (wchr >> 8) & 0xff;
			strUTF8 += String.fromCharCode(0xE0 | (chr2 >> 4));
			strUTF8 += String.fromCharCode(0x80 | ((chr2 << 2) & 0x3C) | ((chr1 >> 6) & 0x3));
			strUTF8 += String.fromCharCode(0x80 | (chr1 & 0x3F));
		}
	}
	return strUTF8;
}

function UTF8ToUnicode(strInUTF8) {
	if (null == strInUTF8) return null;
	var strUTF8 = String(strInUTF8);
	var strUni = String();
	for (var i = 0; i < strUTF8.length;) {
		var chr1 = strUTF8.charCodeAt(i);
		var chr2 = strUTF8.charCodeAt(i + 1);
		var chr3 = strUTF8.charCodeAt(i + 2);
		if (chr1 < 0x80) {
			strUni += strUTF8.charAt(i);
			i++;
		}
		else if (0xC0 == (chr1 & 0xE0)) {
			if (0x80 != (chr2 & 0xC0)) return null;
			strUni += String.fromCharCode(((chr1 & 0x1F) << 6) | (chr2 & 0x3F));
			i += 2;
		}
		else if (0xE0 == (chr1 & 0xF0)) {
			if (0x80 != (chr2 & 0xC0) || 0x80 != (chr3 & 0xC0)) return null;
			strUni += String.fromCharCode(((chr1 & 0x0F) << 12) | ((chr2 & 0x3F) << 6) | (chr3 & 0x3F));
			i += 3;
		}
		else {
			return null;
		}
	}
	return strUni;
}
使用的标签: JavaScript, Unicode, UTF8
 
1 Comment

Posted in JavaScript