首页 > 代码库 > 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  视频点播系统点击事件文档