首页 > 代码库 > Atitit vod click event design flow 视频点播系统点击事件文档
Atitit vod click event design flow 视频点播系统点击事件文档
Atitit vod click event design flow 视频点播系统点击事件文档
重构规划1
Click cate1
Click mov4
重构规划
事件注册,与事件分发管理器分开
Click cate
Main.js line730
// --------------------------------------------
// UI interaction
// --------------------------------------------
$(document).live(‘click‘, function(e){
console.log(e, e.target);
key_events.enter($(e.target));
});
console.log(e, e.target);
When cliek
E:: mouseEvent
E.target==a.item.h2.hover
<a class="item h2 hover" href="javascript:void(0)" e="filter_by_cate" value="http://www.mamicode.com/3"><img src="http://www.mamicode.com/movietype/1.jpg"></a>
//ati p6a add recomm enterKey eventCallback
key_events.enter = function(curr){
curr = curr || $(get_curr_hover());
if (curr.hasClass(‘nav_tab‘)){
curr.parent().find(‘a‘).removeClass(‘selected‘);
curr.addClass(‘selected‘);
// $(‘.activeview .movie_list‘).html($(‘script[name="‘ +curr.attr(‘e‘)+ ‘"]‘).text());
}
var e = curr.attr(‘e‘);
if (e){
// get history
key_events.backlast.data.push($(‘.activeview‘).html());
key_events[e] && key_events[e](e, curr);
}
};
var e = curr.attr(‘e‘);
e = "filter_by_cate", curr = [a.item.h2.hover, selector: "
Line397
//ati p89 add .beir filter_by_cate yash empty
key_events.filter_by_cate = function(e, curr){
//ati p89
//e8=filter_by_cate
//curr=a.item.h2 hover
var value = http://www.mamicode.com/curr.attr(‘value‘) || curr.text();
xhr.get_filter_by(e, value, function(data){
render.movie_list_normal(data);
load_finish_p89();
});
//ati p89 show the new bycate saerch mvs div .and hide the last div
setTimeout(function(){ key_events.filter_close_layer(); }, 300)
};
Line108
xhr.get_filter_by = function(f, value, fn, err){
var sql_t;
//ati p89 search by cate
if (f == ‘filter_by_cate‘){
threadLocalParamMap={};
threadLocalParamMap.fn=fn;
threadLocalParamMap.err=err;
threadLocalParamMap.xhr=xhr;
threadLocalParamMap.value=http://www.mamicode.com/value;
//alert("get_posts_befor");
get_posts(threadLocalParamMap);
cms_api.js
function get_posts(paramJsonMap)
{
try{
var sql_t = ‘material_type‘;
var xhr=paramJsonMap.xhr;
var fn=paramJsonMap.fn;
var err=paramJsonMap.err;
var value=http://www.mamicode.com/paramJsonMap.value;
threadLocalParamMap.xhr=xhr;
threadLocalParamMap.fn=fn;
//com.attilax.api.imoveSqlExcutor.exe
if(window.location.host=="") //cs envi
{
//todox pa6 param use naming params jsonfmt ..not use obj arr
//beir param1=xxx param2=xxx param3=xxx
var mp="$method=aaaCms.CmsImpLocalFileVer.list_nocache&$callback=get_posts_callback?m="+value;
// alert(mp);
HRE.exe(mp,get_posts_callback);
//var json=urlParams2json(param);
//sendNSCommand(json.method,param,callback);
//alert("sendNSCommand ok");
return;
}
xhr.req({http_param: ‘select * from gv_material where ‘+[sql_t, ‘=‘, value].join(‘ ‘)+‘ order by material_description ‘ }, fn, err);
}catch(e)
{
showErr(e);
}
}
//ati pb28 search after list evenet
render.movie_list = function(data, style, err_txt){
data = http://www.mamicode.com/data || {};
var rows = data.rows, r, o = [];
for (var i=0,j=rows.length; i<j; i++){
r = rows[i];
//paa
var img_src=http://www.mamicode.com/‘/vdx/‘ +r.thumb;
if(inDesktopMode())
{
img_src= "file:///"+r.thumb;
}
//paa end
var html_str=‘<a class="item ‘ +(style||‘mv‘)+ ‘" href="javascript:void(0)" e="mv_detail" page_hint="‘+(i+1)+‘/‘+j+‘" mid="‘ +r.material_id+ ‘"><img class="img_item" _src="http://www.mamicode.com/‘ +img_src+ ‘"><h3 class="b c"><span>‘ +r.material_description+ ‘</span></h3></a>‘;
//alert(r.material_id);
o.push(html_str);
}
var w = Math.max(((style==‘mv_tiny‘)?310:390) * o.length, 1000);
if (o.length <= 0) o.push(‘<h2>‘ +(err_txt||‘没有找到相关影片,请更换其他搜索条件。‘)+ ‘</h2>‘);
o.unshift(‘<div class="page_hint">‘+1+‘/‘+rows.length+‘</div><div class="movie_page clearfix" style="width:‘ +w+ ‘px">‘);
o.push(‘</div>‘)
$(‘.activeview .movie_list‘).append(o.join(‘‘));
render.set_movie_list_auto();
};
Click mov
e = "mv_detail", curr = [a.item.mv.hover, selector: ""
//paa add recomm get_post(
//pb28 add recomm detail item clien event ,,get_movie_detail is invoke my detail_client() ,then callback
key_events.mv_detail = function(e, curr){
var mid = curr.attr(‘mid‘);
//alert(" item id:"+mid);
if (!mid)
{
xhr.get_movie_detail(mid, function(data){
xhr.get_movie_detail = function(mid, fn, err){
threadLocalParamMap={};
threadLocalParamMap.fn=fn;
threadLocalParamMap.err=err;
threadLocalParamMap.xhr=xhr;
//threadLocalParamMap.value=http://www.mamicode.com/value;
get_post(mid);
};
/AtiPlatf_se/src_atibrow/com/attilax/movcms/CmsImpLocalFileVer.java
public Objectget_post_api(Object id)
Map m=(Map) get_post(id);
xhr.get_movie_detail(mid, function(data){
//alert(data);
//ati pb28 add try
try{
。。。。。
if(window.location.host=="") //cs envi
{
get_post_intro(r.txt_file);
}
作者:: 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 )
汉字名:艾提拉(艾龙), EMAIL:1466519819@qq.com
转载请注明来源: http://www.cnblogs.com/attilax/
Atiend
Atitit vod click event design flow 视频点播系统点击事件文档