JS(移动端)自己封装移动端一些常用方法
/**
* Created by Administrator on 2016/7/14.
*/
/*命名空间*/
window.lcf = {};
/*监听过渡结束的方法*/
lcf.transitionEnd = function(obj,callback) {
/*判断obj是否是一个对象 使用typeof*/
if(!obj || typeof obj !== "object") return false;
/*监听过渡结束事件*/
obj.addEventListener("webkitTransitionEnd",function () {
callback && callback(); });
obj.addEventListener("transitionEnd", function () {
callback && callback();
});
};
/*监听过渡结束的方法*/
lcf.animationEnd = function (obj,callback) {
/*判断obj是否是一个对象*/
if(!obj || typeof obj !== "object") return false;
/*监听过渡结束事件*/
obj.addEventListener("webkitAnimationEnd",function () {
callback && callback();
});
obj.addEventListener("animationEnd", function () {
callback && callback();
});
};
/*添加过渡方法*/
lcf.addTransition =function(obj){
/*基本判断*/
if(!obj || typeof obj !== "object") return false;
obj.style.transition = "all 1s";
obj.style.webkitTransition = "all 1s";
};
/*移除过渡方法*/
lcf.removeTransition =function(obj){
/*基本判断*/
if(!obj || typeof obj !== "object") return false;
obj.style.transition = "none";
obj.style.webkitTransition = "none";
};
/*上下定位方法*/
lcf.setTranslateY =function(obj,translateY){
/*基本判断*/
if(!obj || typeof obj !== "object") return false;
obj.style.transform = "translateY("+translateY+"px)";
obj.style.webkitTransform = "translateY("+translateY+"px)";
};
/*左右定位方法*/
lcf.setTranslateX =function(obj,translateX){
/*基本判断*/
if(!obj || typeof obj !== "object") return false;
obj.style.transform = "translateX("+translateX+"px)";
obj.style.webkitTransform = "translateX("+translateX+"px)";
};
/*封装tab事件方法*/
lcf.tap = function (obj,callback) {
/*基本判断*/
if(!obj || typeof obj !== "object") return false;
/*记录时间*/
var startTime = 0;
var isMove = false;
/*手指触摸到屏幕时触发touch事件*/
obj.addEventListener("touchstart", function (e) {
/*响应开始时间(毫秒)*/
startTime = Date.now();
});
/*滑动屏幕时触发touch事件*/
obj.addEventListener("touchmove", function (e) {
/*滑动*/
isMove = true;
});
/*手指离开屏幕结束时触发touch事件*/
obj.addEventListener("touchend", function (e) {
/*判断响应时间*/
if((Date.now()-startTime)<150 && !isMove){
callback && callback(e);
}
/*重置参数*/
startTime = 0;
isMove = false;
}); };
/*倒计时*/
lcf.downTime = function (endTime,obj,callback){
/*基本判断*/
if(!endTime || typeof endTime !== "string") return false;
/*基本判断*/
if(!obj || typeof obj !== "object") return false;
/*获取日期的毫秒*/
var endTime = Date.parse(endTime);
/*定时器*/
setInterval(function () {
var nowTime = +new Date();
/*2个时间的差 毫秒*/
var minus =endTime - nowTime;
/*相差的天数*/
var day = parseInt(minus/1000/60/60/24);
/*相差的小时*/
var hours = parseInt(minus/1000/60/60%24);
/*相差的分钟*/
var mintue = parseInt(minus/1000/60%60);
/*获取相差的秒*/
var second = parseInt(minus/1000%60); obj[0].innerHTML = parseInt(hours/10);
obj[1].innerHTML = hours%10;
obj[3].innerHTML = parseInt(mintue/10);
obj[4].innerHTML = mintue%10;
obj[6].innerHTML = parseInt(second/10);
obj[7].innerHTML = second%10; },1000);
callback && callback();
};
JS(移动端)自己封装移动端一些常用方法的更多相关文章
- JS提交对象数组到服务端的方法总结(C#实例)
*转载请注明出处: 作者:willingtolove: 本文链接:http://www.cnblogs.com/willingtolove/p/4741549.html 正文: 1. 方法一:利用aj ...
- JS.中文乱码,Jsp\Servlet端的解决办法
JS.中文乱码,Jsp\Servlet端的解决办法 2010-03-08 15:18:21| 分类: Extjs | 标签:encodeuricomponent 乱码 urldecoder ...
- js判断页面在pc端打开还是移动端打开
js判断页面在pc端打开还是移动端打开,分别跳转不同的index.html window.addEventListener('load', function() { // true为手机,false为 ...
- node.js中ws模块创建服务端和客户端,网页WebSocket客户端
首先下载websocket模块,命令行输入 npm install ws 1.node.js中ws模块创建服务端 // 加载node上websocket模块 ws; var ws = require( ...
- js如何判断用户是在pc端和还是移动端访问
js如何判断用户是在pc端和还是移动端访问 来源:A5技术交流 作者:wofa 时间:2014-04-25收藏本页 最近一直在忙我们团队的项目“咖啡之翼”,在这个项目中,我们为移动平台提供了一个优秀的 ...
- js判断用户是在PC端或移动端访问
js如何判断用户是在PC端和还是移动端访问. 最近一直在忙我们团队的项目“咖啡之翼”,在这个项目中,我们为移动平台提供了一个优秀的体验.伴随Android平台的红火发展.不仅带动国内智能手机行业,而 ...
- Vue.js与 ASP.NET Core 服务端渲染功能整合
http://mgyongyosi.com/2016/Vuejs-server-side-rendering-with-aspnet-core/ 原作者:Mihály Gyöngyösi 译者:oop ...
- JS学习十四天----server端运行JS代码
server端运行JS代码 话说,当今不在client使用JS代码才是稀罕事.因为web应用的体验越来越丰富,client用JS实现的逻辑也越来越多,这造成的结果就是某些差点儿一致的逻辑须要在clie ...
- js插件---WebUploader 如何接收服务端返回的数据
js插件---WebUploader 如何接收服务端返回的数据 一.总结 一句话总结: uploadSuccess有两个参数,一个是file(上传的文件信息),一个是response(服务器返回的信息 ...
随机推荐
- poj 3216 (最小路径覆盖)
题意:有n个地方,m个任务,每个任务给出地点,开始的时间和完成需要的时间,问最少派多少工人去可以完成所有的任务.给出任意两点直接到达需要的时间,-1代表不能到达. 思路:很明显的最小路径覆盖问题,刚开 ...
- B. Sereja and Mirroring
B. Sereja and Mirroring time limit per test 1 second memory limit per test 256 megabytes input stand ...
- 标准linuxserver搭建
一:针对大数据平台的linux例如以下搭建.为了方便截图,採用的虚拟机,与真实环境有点出入 二:过程例如以下 1. 在vmware中选择载入虚拟光盘iso文件,然后进入安装 2. 默认选择第一项 In ...
- mime大全收集
{"ai", "application/postscript"}, {"aif", "audio/x-aiff" ...
- u3d shader使用
先建立一个材质球Material 选择shader 把材质球Material 赋给图片
- C#基础学习心得(二)
索引器 class Program { static void Main(string[] args) { Employee e1 = new Employee(); e1[0] = "三& ...
- 图的深度优先遍历的实现 c/c++ DFS
#include <iostream> #include <stdio.h> #include <stdlib.h> #include <string.h&g ...
- C++标准程序库读书笔记-第四章通用工具
1.Pairs(对组) (1)class pair可以将两个值视为一个单元.任何函数需返回两个值,也需要pair. (2)便捷地创建pair对象可以使用make_pair函数 std::make_pa ...
- asp.net后台向前端输出js脚本的三种方法
//这个方法最快,因为它会输出到html标签之前 Response.Write("<script type='text/javascript'>alert('这个最快')< ...
- Android TextView 字符串展示不同大小文字
用Spannable字符串实现: String s= "Hello Everyone"; SpannableString ss1= new SpannableString(s); ...