归档:2013年3月月

微信公众平台接口更新

蓝飞 蓝飞 | 时间:2013-03-22, Fri | 15,570 views
后台技术 

3月19日,微信公众平台更新了接口,主要变更的接口有如下几点:

新用户订阅,将由之前推送一条“Hello2BizUser”文本,变化为推送一条“subscribe”的事件,变更于3月26日正式生效。

新增通用接口,通用接口是使用HTTP请求,让开发者直接与微信服务器交互,实现媒体文件上传、媒体文件获取等功能,达到获取图片、语音、视频等媒体文件的目的。调用接口所需要的access_token必须通过获取凭证接口获取。

新增自定义菜单接口,开发者获取使用凭证后,可以使用该凭证对公众账号的自定义菜单进行创建、查询和删除等操作。

微信公众平台自定义菜单

新增事件消息类型,事件推送只支持微信4.5版本,目前仅开启自定义菜单接口事件推送。

<xml>
	<ToUserName><![CDATA[toUser]]></ToUserName>
	<FromUserName><![CDATA[FromUser]]></FromUserName>
	<CreateTime>123456789</CreateTime>
	<MsgType><![CDATA[event]]></MsgType>
	<Event><![CDATA[EVENT]]></Event>
	<EventKey><![CDATA[EVENTKEY]]></EventKey>
</xml>
参数 描述
ToUserName 接收方微信号
FromUserName 发送方微信号,若为普通用户,则是一个OpenID
CreateTime 消息创建时间
MsgType 消息类型,event
Event 事件类型,subscribe(订阅)、unsubscribe(取消订阅)、CLICK(自定义菜单点击事件)
EventKey 事件KEY值,与自定义菜单接口中KEY值对应

一个最简单的jQuery焦点图插件实现

蓝飞 蓝飞 | 时间:2013-03-10, Sun | 11,196 views
 

有一个同学需要在网页里用到简单的焦点图效果,在网上找了许多jQuery插件都不甚满意,有一些效果虽然不错,但是根本用不到那么多功能,大材小用不说,还会加大代码量,降低网页前端性能,于是花了十分钟写了一个最最简单的jQuery焦点图插件,麻雀虽小,五脏俱全,可定制宽高,切换延迟。代码如下:

HTML部分,自然是一个非常简单的列表结构:

<ul id="slider" class="slider">
	<li><a target="_blank" href="javascript:void(0);"><img src="images/slider1.jpg" /></a></li>
	<li><a target="_blank" href="javascript:void(0);"><img src="images/slider2.jpg" /></a></li>
	<li><a target="_blank" href="javascript:void(0);"><img src="images/slider3.jpg" /></a></li>
	<li><a target="_blank" href="javascript:void(0);"><img src="images/slider4.jpg" /></a></li>
	<li><a target="_blank" href="javascript:void(0);"><img src="images/slider5.jpg" /></a></li>
</ul>

CSS部分,简单地定义一下样式:

.slider{
	margin: 0 auto;
	padding: 0;
	width: 600px;
	height: 400px;
	list-style: none;
	overflow: hidden;
	position: relative;
}

.slider li{
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	position: absolute;
}

.slider img{
	width: auto;
	height: auto;
	min-width: 100%;
	min-height: 100%;
	text-align: center;
}

(阅读全文…)

jQuery Bug:获取不到Chrome自动填充表单的值

蓝飞 蓝飞 | 时间:2013-03-03, Sun | 11,146 views
前端开发 
// Stop chrome's autocomplete from making your input fields that nasty yellow. Yuck.
if (navigator.userAgent.toLowerCase().indexOf("chrome") >= 0) {
	$(window).load(function(){
		$('input:-webkit-autofill').each(function(){
			var text = $(this).val();
			var name = $(this).attr('name');
			$(this).after(this.outerHTML).remove();
			$('input[name=' + name + ']').val(text);
		});
	});
}