优化自己写jQuery兼容插件placeholder

作者:norion时间:2012年6月2日评论次数:0 条

翻开之前的写”placeholder兼容插件 v1.1″的代码,发现还有优化的地方,小小的改进了一下,但是总体思路并没有变化。

优化的地方:

1、将var声明方式合并,运行更快。

2、将jQuery的bind()方法替换成live()方法,以适应更负责的环境,例如:ajax。

这样执行起来比较,当然了小小的地方影响不了什么,没事码一下代码而已。

插件代码如下:

(function($){
	/*******************************
	 * @name placeholder兼容插件 v1.2
	 * @author norion
	 * @author blog http://zkeyword.com/
	 * @2012.06.02
	 * @可自由转载及使用,但请注明版权归属
	 *******************************/
	$.fn.placeholder = function(){
		if( this.length > 0 ){
			var searchText  = this,
				searchValue = searchText.attr('placeholder');
			if ( !( 'placeholder' in document.createElement('input') ) ){
				searchText.removeAttr('placeholder').val(searchValue).die().live({
					focus:function(){
						if ( this.value == searchValue ) { this.value = '' };
					},blur:function(){
						if ( this.value == '' ){ this.value = searchValue };
					}
				});
			}else{
				searchText.die().live({
					focus:function(){
						if ( jQuery(this).attr('placeholder') == searchValue ){ jQuery(this).attr('placeholder','') };
					},blur:function(){
						if ( jQuery(this).attr('placeholder','') ){ jQuery(this).attr('placeholder',searchValue) };
					}
				});
			}
		}
	}
})(jQuery);

标签:

上一篇: jQuery获取selected的选中后的值

下一篇:修改“WordPress Mobile Themes”的小bug

相关文章

评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注