`
xiaomiya
  • 浏览: 131873 次
  • 性别: Icon_minigender_2
  • 来自: 杭州
社区版块
存档分类
最新评论
阅读更多

做的一个手机项目,进入app公司客户端然后点击我的记事,可以添加自己的记事,作为自己对股票的分析记录或者个人心情记录都可以,,也就是一个记事的功能。。

里面有添加记事,修改记事,删除记事,记事列表。。等功能,,用到异步请求的有,添加,修改,删除。。

记事列表属于是php动态渲染页面的。直接请求成功追加html就可以了,不用自己在拼html结构。

 

JS分有base.js(公共的接口,截取字符串方法,时间戳的转换,等),,

addnote.js(只要是做添加记事输入框的一些输入操作,提示操作,本地存储,清除本地存储,以及添加记事和修改记事的接口,,接口是统一个,但是在修改的时候是获取pid来进行修改的。),

notelist.js(主要是做请求记事列表的接口,和删除列表的接口。选择复选框个数,取消选择,删除等)

 

里面有很多知识的运行。

直接上代码,作为积累。

 

base.js

//@charset "utf-8";

//var info = external.createObject("Passport");
var userid = 114480318 || info.get("161506039");//调试时给加的161506039 114480318 187849908
var uname = 'changnannan' || info.get("HunkHan");

var urlMap = {
    'save': "/blogapi/postapi/post/", // 添加记事的接口
    //'jsUrl': "/blogapi/userpostapi/getUserPostList/"//列表接口
    'jsUrl': "/stockdiary/indexapi/getList/"//列表接口
};
/**
 * @desc 根据博文获取提取股市日记详情接口url
 * @return string
 */
/*function getStockDiaryDetailUrl(pid){ 
	return '/blogapi/postapi/getPostBase/' + '?pid=' + pid;
}*/
/**
 * @desc 根据博文id获取博文删除接口url
 * @return string
 */
function getStockDiaryDeleteUrl(pid){
	return '/blogapi/postapi/delPost/' + '?ids=' + pid;
}
//时间戳转换成日期时间2014-8-8 下午11:40:20
function formatDate(ns){
	return new Date(parseInt(ns) * 1000).toLocaleString().replace(/年|月/g, "-").replace(/日/g, " ");
}

//时间戳转换成八位日期2014-5-5 
function userDate(uData){
	var myDate = new Date(uData*1000);
	var year = myDate.getFullYear();
	var month = myDate.getMonth() + 1;
	var day = myDate.getDate();
	return year + '-' + month + '-' + day;
}

//时间戳转换成四位时间10:10  
function userTime(uTime){
	var myDate = new Date(uTime*1000);
	var hours = myDate.getHours();
	var minutes = myDate.getMinutes();
	return hours + ':' + minutes;
}


//时间戳转换成四位时间10:10:00
function userTime(uTime){
    var myDate = new Date(uTime*1000);
    var hours = myDate.getHours();
    var minutes = myDate.getMinutes();
    var second = myDate.getSeconds();
    return hours + ':' + minutes + ':' + second;
}

//定时提醒设置的时间传入 (2014,05,15)返回成2014-01-21
function setDate(year,month,day){
    return year + '-' + month + '-' + day; 
}
//定时提醒设置的时间传入 (01:02)返回成01:01:00
function setTime(hour,minute){
    return hour + ':' + minute+ ':00';
}

//时间格式2014-02-02 14:10:00改成时间戳
function js_strto_time(str_time){
    var new_str = str_time.replace(/:/g,"-");
    new_str = new_str.replace(/ /g,"-");
    var arr = new_str.split("-");
    var datum = new Date(Date.UTC(arr[0],arr[1]-1,arr[2],arr[3]-8,arr[4],arr[5]));
    return strtotime = datum.getTime()/1000;

}
//时间戳改成时间格式2014-12-12 下午01:10
function js_date_time(unixtime){
    var timestr = new Date(parseInt(unixtime) * 1000);
    var datetime = timestr.toLocaleString().replace(/年|月/g,"-").replace(/日/g," ");
    return datetime;
}

//获取location.url中的某一个字段值
function getUrlParam(item) {
    var value = location.search.match(new RegExp("[\?\&]" + item + "=([^\&]*)(\&?)", "i"));
    return value ? value[1] : value;
}

//限制字数
function mCutStr(str, len, str2) {
    if (str == '') {
        return '';
    }
    if (str2 == '') {
        var str3 = '';
    } else {
        var str3 = str2 || '...';
    }
    var str_length = 0; //实际长度
    var str_len = 0;
    str_cut = new String();
    str_len = str.length;
    for (var i = 0; i < str_len; i++) {
        a = str.charAt(i);
        str_length++;
        //中文的情况多加1
        if (escape(a).length > 4) {
            //中文字符的长度经编码之后大于4
            str_length++;
        }
        str_cut = str_cut.concat(a);
        if (str_length <= len && (i == (str_len - 1) || i == (str_len - 2))) {
            return str;
        }
        if (str_length >= len && i < (str_len - 2)) {
            str_cut = str_cut.concat(str3);
            return str_cut;
        }
    }
}

  

 

addnote.js

//@charset "utf-8";
Zepto(function(){	
//用户输入
	$('#notetitle').focus(function () {
    	if ($("#notetitle").val() == '无标题笔记') {
			$("#notetitle").val('')
		}
		$("#notetitle").css("color","#000");
	});
	$('#notecontent').focus(function () {
    	if ($("#notecontent").val() == '你想记录的内容') {
			$("#notecontent").val('')
		}
		$("#notecontent").css("color","#000");
	});
	$('#notetitle').blur(function () {
		var text = $(this).val();
		$(this).val(mCutStr(text, 42, ''));
		if(text.length == 0){
			$("#notetitle").val("无标题笔记");
			$("#notetitle").css("color","#D7D7D7");
		}
	});
	$('#notecontent').blur(function () {
		var text = $(this).val();
		if(text.length == 0){
			$("#notecontent").val('你想记录的内容');
			$("#notecontent").css("color","#D7D7D7");
		}
	});
	
	
	//定时提醒
	$("#remind").change(function(){
		if($(this).attr("checked") == true ){
			$(".s-data, .s-time").removeAttr("disabled");
			$(".s-data, .s-time").css('color','#000');
			$(".s-data, .s-time").css('display','inline-block');
		}else{
			$(".s-data, .s-time").attr("disabled", true);
			$(".s-data, .s-time").css('color','#969696');
			$(".s-data, .s-time").css('display','none');
		}
	});
	
	//调起日期控件
	$(".s-data").click(function(){
		//showDatePicker();
	});
	
	//调起时间控件
	$(".s-time").click(function(){
		//showTimePicker();
	});
	
	//本地存储
	var nt = document.getElementById('notetitle');
	var nc = document.getElementById('notecontent');
	if(typeof(pid) != "undefined"){
		if(nt.value != '无标题笔记'){
			$("#notetitle").css("color","#000");
		}
		if(nc.value != '你想记录的内容'){
			$("#notecontent").css("color","#000");
		}
		window.localStorage.clear();
	}else{
		    if(window.localStorage.getItem('ntitle')){
			    nt.value = window.localStorage.getItem('ntitle');
				if(nt.value != '无标题笔记'){
					$("#notetitle").css("color","#000");
				}
			}
			if(window.localStorage.getItem('ncontent')){
				nc.value = window.localStorage.getItem('ncontent');
				if(nc.value != '你想记录的内容'){
					$("#notecontent").css("color","#000");
				}
			}
			window.onunload = function() {
		        if(nt.value){
					window.localStorage.setItem('ntitle',nt.value);
				}
				if(nc.value){
					window.localStorage.setItem('ncontent',nc.value);
				}
		    };
			
	}       
	
	//点击完成提交数据add
	$(".add-box .okbtn").tap(function(){
		var title = $("#notetitle").val();
		var content = $("#notecontent").val();
		var cate = -1;
		var opens = 0;
		var stockcode = $(".no-edit").attr('stockcode');
		var alert_time = alert_time;
		if(title == '无标题笔记' && content == '你想记录的内容'){
			alert("您还没有做任何记录哟!");
			return false;
		}else if(title != 0 && title != '无标题笔记' && content == '你想记录的内容'){
			var content = $("#notetitle").val();
		}
		if($("#remind").attr("checked") == true){
			var data = $(".s-data").val();
			var time = $(".s-time").val();
			var alert_time = data +" "+ time;
			var str_time = js_strto_time(alert_time);//
			//alert(str_time);
		}
		
		if(typeof(pid) != 'undefined' ){
			var datas = {title:title,pid:pid,content:content,cate:cate,open:opens,stockcode:stockcode,alert_time:str_time};
		}else{
			var datas = {title:title,content:content,cate:cate,open:opens,stockcode:stockcode,alert_time:str_time};
		}
		$.ajax({
			url:urlMap.save,
			type:'POST',
			data:datas,
			dataType: 'json',
			success: function(data){
				if (data.errorcode == 0) {
					alert('保存记事成功!');//保存云端
					location.href = $(".okbtn").attr("link");//到记事列表
				}else{
					alert(data.errormsg);
				}
			},
			error: function (data) {
				alert(data.errormsg);
			}
		});	
	});
	//判断有没有股票代码
	if($(".no-edit").css("display") == "block"){
		$("#notecontent").css('height','368px');
	}
});

 

 

notelist.js

//@charset "utf-8";
Zepto(function(){
//与手机端交互接口暂时注释掉为了不报错
if(typeof(clock) != "undefined"){
	/*bridge.callHandler('notificationList',clock,function(data){
		alert(data);
	});*/
}
//初始加载
loadMove();
noteLast();
//去掉当天记事最后一条的线
function noteLast(){
	$(".time-list").each(function (i, obj) {$(obj).find(".text-in").eq(-1).css('border-bottom','0');});
}

//向上滑动或者点击加载更多方法
function loadMove(){
	//判断不同入口,添加记事有无
	if($(".add").length == 0){
		$(".notelist-content").css("margin","44px 0 0");
	}
	$(".notelist-content").on("swipeUp",function(){
      	var stop1=$(window).scrollTop();
      	var ttop=$("#last-note").offset().top;
        var wtop=$(window).height();
        if(stop1+wtop > ttop){
			
			$(".loadingmove").css('display','inline-block');
			$(".addmove").text('正在加载中');	
			var lastid = $(".noteli").eq(-1).attr("textclick");
			var listParam = 'lastId='+ lastid +'&start=0&length=10';
			$.ajax({
				url:urlMap.jsUrl,
				type:'POST',
				data:listParam,
				dataType: 'json',
				//async:false,
				success: function(data){
					if(data.errorcode == 0){
						$("#last-note").before(data.result.html);
						$(".loadingmove").css('display','none');
						//$(".addmove").text('记事已经加载完毕');
						noteLast();
					}else{
						alert(data.errormsg);
					}
				},
				error:function(data){
					alert(data.errormsg);
				}
			});			 
		}
	});
}
	
//点击进入(编辑页)详细页
$(".noteli").live('tap',function(){
	if($(".delete").css("display") == "inline-block"){
		return false;
	}else{
		location.href = $(this).attr('link');
	}
});


//点击整理
$("#arrange").tap(function(){
	$(".list-hd-delete").show();
	$(".list-hd").hide();
	$(".delete").show();
	$(".notelist-content").off();
	
});


//选中复选框
$(".delete").live('tap',function(){
	var pids = $(this).attr('value');
	//alert(pids);
	delCheck();
});

//选中复选框个数
function delCheck(){
	if($(".delete").css("display") == "inline-block"){
		var del = $(".notelist-content").find(".delete");
		var m = 0;
		var n = false;
		for(var i=0;i<del.length;i++){
			if(del[i].checked){
				n = true;
				m ++;
			}
		}
		$(".num").text(m);

	}

}

//点击取消
$(".cancelbtn").tap(function(){
	$(".list-hd-delete").hide();
	$(".list-hd").show();
	$(".delete").css('display','none');
	loadMove();//再次加载更多
	delCheck();
});

var checkeds = [];
//点击删除
$("#alldelete").tap(function(){

	var checked = $("input[name='checks']:checked");
	checked.each(function (i, input){
		checkeds.push($(this).val());
	});
    var deleteUrl = getStockDiaryDeleteUrl(checkeds);
	$.ajax({
		url:deleteUrl,
		type:'POST',
		data:{ids:checkeds},
		dataType: 'json',
		success: function(deletemes){
			if (deletemes.errorcode == 0) {
				$("input[name='checks']:checked").parents(".time-list").remove();
				alert("删除成功");
			}else{
				alert(data.errormsg);
			}
		},
		error: function (deletemes) {
			alert(deletemes.errormsg);
		}
	});	
	
	
});

//返回
$("#backnote").tap(function(){
	//返回到上一层也就是手机同花顺主页或者是个股页面暂时先注释
	//bridge.callHandler('exit',JSON,function(){})
});

});

 

0
0
分享到:
评论

相关推荐

    语音播报记事器的设计申报书

    这样的项目旨在结合现代科技,为用户提供一种便捷、无障碍的记事方式,特别是对于视力障碍或者在繁忙工作中无法分心查看文字的用户,语音播报记事器能极大地提高效率和便利性。 【描述】"语音播报记事器的设计"涵盖...

    记事狗微博系统 v3.0.0 beta GBK Build 20110916.rar

    记事狗微博系统是一套业界领先的开源PHP微博程序,其支持Web、手机、短信、QQ机器人等多种方式发布内容,并可通过QQ即时通知、站外调用、同步到新浪微博、腾讯微博(可使用微博账户登录、注册绑定)等传播内容,是...

    记事狗微博系统2.5源码PHP

    7、新增积分奖励,管理员后台可设置奖励项目、周期,有效激励用户; 8、可设置关注某用户、发布某话题奖励积分,有效引导用户言论; 9、手机WAP访问,新增用户注册、关注等功能,基本实现WEB相关操作; 10、大...

    日历记事软件代码

    本项目名为“日历记事软件代码”,显然是一个基于Android平台开发的日历应用程序的源代码。下面我们将深入探讨这个项目可能包含的关键技术点和实现细节。 首先,Android是Google开发的开源移动操作系统,用于智能...

    仿微博记事狗微博20110922

    【标题】:“仿微博记事狗微博20110922”是一个与微博相关的项目或软件,可能是一个在2011年9月22日开发的微博客户端模仿程序,或者是对微博功能的某种模拟实现。这个标题暗示了我们要讨论的内容与社交媒体平台微博...

    win8随时随地指触记事应用.docx

    它具有两级分类加标签的管理方式,支持离线查看文档,并且能在电脑、手机、平板电脑等不同平台之间实现全平台云同步。 总的来说,这些记事应用为Windows 8用户提供了多样化的选择,无论是简单记录、详细规划还是...

    记事狗微博系统

    通过深入研究"记事狗微博系统"的源代码,开发者可以学习到如何构建大型社交网络的架构,如何优化性能,以及如何处理并发请求和大数据量的存储问题。此外,它还能提供关于如何实现用户权限管理、消息推送等复杂功能的...

    简易手机记事本

    【简易手机记事本】是一款专为Android操作系统设计的轻量级应用,旨在提供便捷的记事功能,帮助用户在移动设备上快速记录生活点滴、工作事项或任何灵感。这款应用简单易用,具备基本的文本编辑功能,是日常生活与...

    记事本项目

    【标题】"记事本项目"是一个以时间轴为基础的记事应用开发项目,它旨在提供一种直观且用户友好的方式来记录、管理和查看个人的笔记或账目。这种类型的应用通常结合了日历和时间线元素,使用户能够按照时间顺序轻松...

    php 记事狗微博

    7、新增积分奖励,管理员后台可设置奖励项目、周期,有效激励用户; 8、可设置关注某用户、发布某话题奖励积分,有效引导用户言论; 9、手机WAP访问,新增用户注册、关注等功能,基本实现WEB相关操作; 10、大...

    手机备忘录开题报告

    随着科技的进步,手机备忘录软件不仅提供了基础的提醒、记事和存储功能,还在界面友好性和功能完善性上下功夫。研究者需要在这样的背景下,设计出独特且实用的J2ME手机备忘录系统。 三、主要内容: 1. 设计背景:...

    基于Android手机平台的记事本设计课程设计.doc

    《基于Android手机平台的记事本设计》是一个课程设计项目,旨在通过开发一款适用于Android手机的记事本应用,让学生熟悉Android开发环境、Java组件的使用以及数据存储的方法。以下是该项目涉及的主要知识点: 1. **...

    安卓Android源码——适合新手的简单记事本项目.zip

    Android是一个开源的操作系统,主要用于移动设备,如智能手机和平板电脑。它的应用程序主要用Java或Kotlin语言编写,通过Android Studio这个集成开发环境(IDE)进行开发。开发者需要掌握XML语言来设计用户界面,...

    java记事轴

    "java记事轴"这个项目,虽然名字中包含了"java",实际上是指的JavaScript中的一个应用,而非Java语言本身。它涉及到的是使用JavaScript来实现一个时间轴的效果,这通常用于展示公司历史、新闻事件或者任何按照时间...

    基于PHP的记事狗微博系统模板php版v1.0源码.zip

    这个项目可能包含了前端用户界面、后端逻辑处理以及数据库交互等功能模块,旨在提供一个简单、可定制化的基础框架。 【描述】此源码是v1.0版本,意味着它可能是一个早期版本,可能存在一些限制或不完善之处,但同时...

    云笔记项目描述.pdf

    其他如麦库记事、Wiz笔记和云笔记等也提供了类似服务,市场竞争日益激烈。这表明云笔记市场有着巨大的潜力,用户对这类应用的接纳度较高。 **3. 可行性分析** **3.1 市场方面可行性** 市场需求旺盛,用户对云笔记...

    手机记事本程序,利用mvc模式设计记事本程序,能够对记事本 进行管理.zip

    总之,"手机记事本程序,利用mvc模式设计记事本程序,能够对记事本进行管理"这一项目展示了如何运用MVC模式来构建一个功能完善的移动应用,提供了良好的代码组织结构和高效的开发流程。通过理解这一模式,开发者可以...

    Android应用系统项目计划书例子.doc

    2. 记事本模块:提供文本编辑、图片插入、语音记录、时间标签等多样化的记录方式,支持按日期、标签等方式查找记事,同时设置提醒功能。 五、安全性与性能优化 1. 数据安全:采用加密技术保护用户的通讯录和记事本...

    Android平台的记事本软件大作业报告

    基于此背景,本项目旨在设计并实现一款适用于Android平台的记事本应用,满足用户在日常生活中的记事需求。 #### 需求分析 为了确保应用能够满足用户的实际需求,我们对记事本应用的主要功能进行了细致的需求分析。...

    Android应用系统项目实施计划书例子.doc

    在Android操作系统中,通讯录和记事本应用是手机用户日常生活中不可或缺的功能。通讯录软件不仅是管理联系人和联系方式的基础工具,还能够集成多种扩展功能,如安全备份、分类管理等,以提升用户体验。在Android环境...

Global site tag (gtag.js) - Google Analytics