Atitit vod click event design flow 视频点播系统点击事件文档
Atitit vod click event design flow 视频点播系统点击事件文档
重构规划
事件注册,与事件分发管理器分开
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="3"><img src="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 = 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=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=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 = data || {};
var rows = data.rows, r, o = [];
for (var i=0,j=rows.length; i<j; i++){
r = rows[i];
//paa
var img_src='/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="' +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=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 视频点播系统点击事件文档的更多相关文章
- Android开发之深入理解Android 7.0系统权限更改相关文档
http://www.cnblogs.com/dazhao/p/6547811.html 摘要: Android 6.0之后的版本增加了运行时权限,应用程序在执行每个需要系统权限的功能时,需要添加权限 ...
- #Mac技巧#如何在Mac系统上新建TXT文档,以及打开txt文稿的乱码问题如何解决
使用mac的朋友可能都有这样的疑问,mac系统下强大的文本编辑器居然不能保存常用的TXT格式? 又或者打开同事在windows上保存的TXT文件会出现如下情况: 最近Hans也被这些问题困扰着,于是便 ...
- 通达OA在centos系统中快速部署文档(web和数据库)
通达OA2008从windows环境移植到linux中(centos5.5及以上版本) 如果安装好了,还是无法访问,则需要清空浏览器缓存即可 1.安装lamp环境,这里用的是xampp集成安装包xam ...
- linux 系统中将数据写入文档不能立即保存问题的解决方法
应用场景: 设备跑的是Linux系统,与PC上位机进行通信,上位机可以给Linux发送设备配置信息,Linux将配置信息写入文件中以备设备断电重启时使用. bug现象: 设备正常运行,设备配置信息为A ...
- Python sphinx-build在Windows系统中生成Html文档
看到前同事发布的“Markdown/reST 文档发布流水线”基于TFS.Docker.Azure等工具和平台进行文档发布的介绍说明,不得不在心中暗暗竖起大拇指.这套模式,实现了文档编写后版本管理.发 ...
- Linux系统下Java 转换Word到PDF时,结果文档内容乱码的解决方法
本文分享在Linux系统下,通过Java 程序代码将Word转为PDF文档时,结果文档内容出现乱码该如何解决.具体可参考如下内容: 1.问题出现的背景 在Windows系统中,使用Spire.Doc ...
- Atitit vod ver 12 new feature v12 pb2 影吧 视频 电影 点播 播放系统v12新特性
Atitit vod ver 12 new feature v12 pb2 影吧 视频 电影 点播 播放系统v12新特性 项目分离从独立的se ver Run mode from brow ex to ...
- atitit.vod search doc.doc 点播系统搜索功能设计文档
atitit.vod search doc.doc 点播系统搜索功能设计文档 按键的enter事件1 Left rig事件1 Up down事件2 key_events.key_search = fu ...
- Atitit.vod 视频播放系统 影吧系统的架构图 架构体系 解决方案
Atitit.vod 视频播放系统 影吧系统的架构图 架构体系 解决方案 1. 运行平台:跨平台 android ios pc mobile 1.1. -------------前端 界面------ ...
随机推荐
- MVC模式下向qq邮箱发送邮件
将已经保存在数据库中的密码通过邮件发送到qq邮箱中.用的ssm框架,其中的config文件要先配置好. 用到的jar包有gson-2.2.1.jar,gson.jar,mail.jar,activat ...
- MATLAB-octave中平面向量场图的可视化
quiver,平面向量场图 [x, y, z] = peaks(20); [u, v] = gradient(z); contour(x, y, z, 10); hold on, quiver(x,y ...
- Microsoft.Office.Interop.Excel 程序集引用 ,Microsoft.Office.Interop.Excel.ApplicationClass 无法嵌入互操作类型
using Microsoft.Office.Interop.Excel 添加程序集引用 方法:在引用--程序集--扩展中,添加引用Microsoft.Office.Interop.Excel,此 ...
- cocos2d 3.X Shader 变暗和变灰
转自http://www.waitingfy.com/archives/1741 1.为了节约一张图引发的Shader使用 我们注意到这个游戏当中经常使用一些按钮,美术会给两张图,一张稍微暗点,表示 ...
- [spark案例学习] 单词计数
数据准备 数据下载:<莎士比亚全集> 我们先来看看原始数据:首先将数据加载到RDD,然后显示数据框的前15行. shakespeareDF = sqlContext.read.text(f ...
- [Django] Setting up Django Development Environment in Ubuntu 14.04
1. Python Of course you will need Python. Still Python 2.7 is preferred, however if you would like t ...
- JAVA设计模式--抽象工厂模式
抽象工厂设计模式 1.系统中有多个产品族,而系统一次只可能消费其中一族产品2.同属于同一个产品族的产品以其使用.来看看抽象工厂模式的各个角色(和工厂方法的如出一辙):抽象工厂角色: 这是工厂方法模式的 ...
- Amazon的推荐系统
本文引自http://blog.csdn.net/fwing/article/details/4942886 现在的推荐系统特别火啊.做得最好的应该是Amazon了. 上面是Amazon的图书推荐. ...
- CXF实现webservice
虽然网上有很多cxf的教程,但还是要自己写写, “好记性不如烂笔头” 1.服务端 1.1 DEMO,用于测试传递对象 package com.xq.model; import javax.persi ...
- firefox安装firebug\XPath Checker
XPath Checker安装,打开下面地址安装: https://addons.mozilla.org/en-US/firefox/addon/xpath-checker/ 安装XPath Chec ...