Skip to content

jssl915/tvQuery

Repository files navigation

tvQuery tvQuery用于电视端开发的TV组件。 参考了jQuery的实现方法,主要模拟了按钮、文本框、下拉框、radio、checkbox等组件。 另外用js实现了一个支持中文输入法的键盘,还有一些其它扩展组件,如城市选择等功能, 联动下拉框,图片切换、评价、中文翻页等。 由于用到一些CSS3的特性,所以在浏览器上使用时请使用支持CSS3的浏览器。 tvQuery模拟了jQuery的调用方法,可以给组件元素绑定事件,添加属性。 另支持ajax,alert框,confirm框等。

API如下所示:

//所有组件都有的方法:

$tv('#id').left(function(){}); 左移之前调用的方法

$tv('#id').right(function(){}); 右移之前调用的方法

$tv('#id').down(function(){}); 下移之前调用的方法

$tv('#id').up(function(){}); 上移之前调用的方法

$tv('#id').loseFocus(function(){}); 失去焦点之前调用的方法

$tv('#id').getFocus(function(){}); 得到焦点之前调用的方法

//按钮组件 $tv('#id').ok(function(){}); 确认方法

$tv('#id').attr('tv_css',[]) 添加属性方法

按钮可添加的属性有x,y,tv_css

//文本框和密码组件框

$tv('#id').val(); 取值

$tv('#id').val(12); 赋值

$tv('#id').attr('tv_css',[]) 添加属性方法

$tv('#id').attr('maxlength',10) 添加文本框输入字符个数

文本框可添加的属性有x,y,tv_css,maxlength,placeholder,content(number)

//文本框有键盘事件

$tv('#id').ok(function(){this.bindSoftKey()})//按OK键可以调用

//下拉框

$tv('#id').val(); 取值

$tv('#id').val(12); 赋值

$tv('#id').attr('tv_css',[])

$tv('#id').attr('option',[])

下拉框可添加的属性有x,y,tv_css,option

//单选框

$tv('.color').val();

$tv('.color').val('value');

$tv('#id').attr('tv_css',[])

$tv('#id').attr('name','color')

$tv('#id').attr('value',21)

$tv('#id').attr('tv_css',[]).attr('name','color').attr('value',21) 支持连写

$tv('#id').attr({'tv_css':[],'name':'color','value':21}); 支持一次添加所有属性

单选框可添加的属性有x,y,tv_css,name,value

//多选框

$tv('.color').val();

$tv('.color').val('value1,value2');

$tv('#id').attr('tv_css',[])

$tv('#id').attr('name','color')

$tv('#id').attr('value',21)

多选框可添加的属性有x,y,tv_css,name,value

//特殊组件tv_special

$tv('#id').doKeyBoardMethod(function(){}) //键盘方法,支持数字键,字母键操作

$tv('#id').doKeyBoardMethod(function(){

switch (this.key){

	case 1 :{
	
		doSomething(); //按下数字键1时执行方法
		
		break;
		
	} 
	
	case 2 :{
	
		doSomething(); //按下数字键2时执行方法
		
		break;
	} 
	
	...
	
}
});

$tv.loadInit({id:'tv_classify',data:data}) 初始化方法,并将焦点放到id上

$tv.setSupportMouse(false); 禁止鼠标事件,$tv.setSupportMouse(true);支持

$tv.alert('内容'); alert框

$tv.setFocusId('id'); 设置焦点

$tv.tvLoad(oDiv,data); 加载新的div,主要用于display:none这种div显示的时候调用

//confirm框

$tv.confirm({ content:'确定要删除这个吗?',

onClose:function(v){

	if(v){
	
		alert('确认');
		
	}else{
	
		alert('取消');
		
	}
	
}

});

//ajax方法

$tv.ajax({

url: "http://192.168.1.59/TV_Component/index.html",  //请求地址

type: "GET",                       //请求方式

data: {name: "super", age: 20 },   //请求参数

dataType: "json",

success: function (response, xml) {

	alert(response);
	
},

fail: function (status) {

	// 此处放失败后执行的代码
	
}

});

//扩展组件

//评分组件

star.init('tv_star',3); //初始化可评分

star.info('tv_star',3); //只显示评分级别

$tv('#tv_star').val(); //获取评分

//翻页组件

var obj ={

id:'infoText', //需翻页的ID

preId:"tv_pre", //上一页按钮ID

nextId:'tv_next' //下一页按钮ID	

}

pageTurn.init(obj);

//中文键盘组件 (其中tv_search_text为文本框,right,bottom为键盘位置)

$tv('#tv_search_text').ok(function(){this.bindSoftKey({right:'10px',bottom:'10px'})})

//联动下拉组件

var obj = {

css1:['one_select_1','one_select_2'],//有右键头

css2:['two_select_1','two_select_2'],//没右键头	

data:[

	{one:{id:'0',name:'全部分类',level:0}},
	
	{one:{id:'1',name:'美食'},
	
	 two:[{	id:'1',name:'火锅'},
		 
	     	{id:'1',name:'自助餐'},
	     
	     	{id:'1',name:'西餐'},
		  
	     	{id:'1',name:'日韩料理'},
		  
		{id:'1',name:'蛋糕甜点'},
		  
	  	{id:'1',name:'烧烤烤鱼'},
		  
	  	{id:'1',name:'川湘菜'},
		  
	  	{id:'1',name:'江浙菜'},
		  
	  	{id:'1',name:'京菜'},
		  
	  	{id:'1',name:'素食'},
		  
		{id:'1',name:'清真菜'},
		  
	  	{id:'1',name:'台湾菜'},
		  
	  	{id:'1',name:'特色菜'},
		  
	  	{id:'1',name:'咖啡酒吧'},
		  
	  	{id:'1',name:'其它美食'}]},
		  
	{one:	{id:'2',name:'酒店',level:0},
	
	 two:[	{id:'2',name:'经济型酒店'},
	 
 	  	{id:'2',name:'豪华酒店'}]},
	 	  
	{one:	{id:'3',name:'电影'}},
	
	{one:	{id:'4',name:'休闲娱乐'},
	
	 two:[	{id:'4',name:'电影'},
	 
	 	{id:'4',name:'KTV'},
		 
	 	{id:'4',name:'温泉/洗浴'},
		 
	 	{id:'4',name:'足疗按摩'},
		 
	 	{id:'4',name:'运动健身'},
		 
	 	{id:'4',name:'桌游/电玩'},
		 
	 	{id:'4',name:'密室逃脱'},
		 
	 	{id:'4',name:'咖啡酒吧'},
		 
	 	{id:'4',name:'演出赛事'},
		 
	 	{id:'4',name:'DIY手工'},
		 
	 	{id:'4',name:'真人CS'},
		 
	 	{id:'4',name:'4D/5D电影'},
		 
	 	{id:'4',name:'其它娱乐'}]},
		 
	{one:	{id:'5',name:'生活服务'},
	
	 two:[	{id:'5',name:'母婴亲子'},
	 
	 	{id:'5',name:'摄影写真'},
		 
	 	{id:'5',name:'体检保健'},
		 
	 	{id:'5',name:'汽车服务'},
		 
	 	{id:'5',name:'照片冲印'},
		 
	 	{id:'5',name:'培训课程'},
		 
	 	{id:'5',name:'鲜花婚庆'},
		 
	 	{id:'5',name:'服饰服务'},
		 
	 	{id:'5',name:'配镜'},
		 
	 	{id:'5',name:'其它生活'}]},
		 
	{one:	{id:'6',name:'丽人'},
	
	 two:[	{id:'6',name:'美发'},
	 
	 	{id:'6',name:'美甲'},
		 
	 	{id:'6',name:'美容SPA'},
		 
	 	{id:'6',name:'瑜伽/舞蹈'}]},
		 
	{one:	{id:'7',name:'旅游'},
	
	 two:[	{id:'7',name:'本地/周边游'},
	 
 	 	{id:'7',name:'景点门票'}]
	 	 
	}
	
]

}

$tv('#tv_classify').ok(function(){linkSelect.init(this.id,obj)});

//地区选择组件

$tv('#tv_location').ok(function(){tvArea.init(this.id);});

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors