活动倒计时-兼容ios
最近要做一个活动,需要用倒计时,写好之后再IOS上无效,经过百度知道了,原来IOS不能识别格式“2017-11-09 ……”,所以要进行转换才有效

直接上代码了:
<!DOCTYPE html>
<html> <head>
<meta charset="UTF-8">
<title></title>
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
</head> <body>
<textarea name="" id="txt1" cols="30" rows="10"></textarea>
<textarea name="" id="txt2" cols="30" rows="10"></textarea> <button id="time_btn">测试倒计时</button>
<div id="timelayer" class="timelayer">
<div class="con">
<h4>离活动开始还有</h4>
<p>
<span id="t_d"></span> 天
<span id="t_h"></span> 小时
<span id="t_m"></span> 分钟
<span id="t_s"></span> 秒
</p>
<button id="close" class="close">关闭</button>
</div>
</div>
<script type="text/javascript">
var txt1 = document.getElementById('txt1');
var txt2 = document.getElementById('txt2'); // 设置活动时间的格式为 2017-11-27 00:00:00
var theTime = "2019-11-28 00:00:00";
var timeLayer = document.getElementById("timelayer");
var timeLayerClose = document.getElementById("close");
var timeBtn = document.getElementById('time_btn'); timeBtn.onclick = function () {
//注意:必须将字符-转换为/,否则IOS不能识别
var setDate = new Date(Date.parse(theTime.replace(/-/g, "/"))).getTime(); //Date.parse(new Date()); //字符串转换为时间戳
var nowDate = new Date().getTime(); console.log(setDate);
console.log(nowDate);
if (setDate <= nowDate) {
//活动开始
console.log('start')
} else {
//活动未开始,倒计时
setInterval(GetRTime, 0);
timeLayer.classList.add('show')
} } //弹框JS
timeLayerClose.onclick = function () {
timeLayer.classList.remove('show')
} // 倒计时JS
function GetRTime() {
var EndTime = new Date(Date.parse(theTime.replace(/-/g, "/"))).getTime();
var NowTime = new Date().getTime(); txt1.innerText = EndTime;
txt2.innerText = NowTime;
var t = EndTime - NowTime;
var d = 0;
var h = 0;
var m = 0;
var s = 0;
if (t >= 0) {
d = Math.floor(t / 1000 / 60 / 60 / 24);
h = Math.floor(t / 1000 / 60 / 60 % 24);
m = Math.floor(t / 1000 / 60 % 60);
s = Math.floor(t / 1000 % 60);
} document.getElementById("t_d").innerHTML = d;
document.getElementById("t_h").innerHTML = h;
document.getElementById("t_m").innerHTML = m;
document.getElementById("t_s").innerHTML = s;
} </script> <style>
.timelayer {
display: none;
position: fixed;
height: 100%;
width: 100%;
top: 0px;
left: 0px;
background-color: rgba(0, 0, 0, .6);
} .timelayer.show {
display: block !important;
} .timelayer .con {
background-color: #fff;
width: 260px;
position: absolute;
left: 50%;
top: 50%;
margin-top: -73px;
padding: 35px 20px;
border-radius: 8px;
overflow: hidden;
margin-left: -150px;
} .timelayer h4 {
line-height: 45px;
font-size: 20px;
font-weight: 700;
color: #7e28c2;
text-align: center;
margin:0px;
} .timelayer p {
margin-top: 10px;
text-align: center;
font-size: 16px;
} .timelayer p span {
padding: 0px 3px;
color: red;
font-weight: 700;
} .timelayer .close {
position: absolute;
height: 35px;
width: 35px;
right: 0px;
top: 0px;
/*background: url(images/close3.png) center center no-repeat;*/
background-size: 20px;
}
</style>
</body> </html>
活动倒计时-兼容ios的更多相关文章
- iOS活动倒计时的两种实现方式
代码地址如下:http://www.demodashi.com/demo/11076.html 在做些活动界面或者限时验证码时, 经常会使用一些倒计时突出展现. 现提供两种方案: 一.使用NSTime ...
- 兼容iOS 10 资料整理笔记
原文链接:http://www.jianshu.com/p/0cc7aad638d9 1.Notification(通知) 自从Notification被引入之后,苹果就不断的更新优化,但这些更新优化 ...
- iOS开发 - 兼容iOS 10
1.Notification(通知) 自从Notification被引入之后,苹果就不断的更新优化,但这些更新优化只是小打小闹,直至现在iOS 10开始真正的进行大改重构,这让开发者也体会到UserN ...
- 【转】兼容iOS 10 资料整理
1.Notification(通知) 自从Notification被引入之后,苹果就不断的更新优化,但这些更新优化只是小打小闹,直至现在iOS 10开始真正的进行大改重构,这让开发者也体会到UserN ...
- 兼容iOS 10 资料整理
1.Notification(通知) 自从Notification被引入之后,苹果就不断的更新优化,但这些更新优化只是小打小闹,直至现在iOS 10开始真正的进行大改重构,这让开发者也体会到UserN ...
- 兼容iOS 10 资料整理笔记-b
原文链接:http://www.jianshu.com/p/0cc7aad638d9 1.Notification(通知) 自从Notification被引入之后,苹果就不断的更新优化,但这些更新优化 ...
- 活动倒计时代码(精确到毫秒)jquery插件
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- 解决scroll在ios上卡顿问题和兼容ios不支持:active伪类情况
//有时候因为滚动层级元素过多会产生卡顿,特别在ios上十分明显,如果不想更换其他实现方式,可以加:-webkit-overflow-scrolling: touch; 开启硬件加速: 兼容ios不支 ...
- 关于新版本,iOS10的相关内容,兼容iOS 10 资料整理笔记
1.Notification(通知) 自从Notification被引入之后,苹果就不断的更新优化,但这些更新优化只是小打小闹,直至现在iOS 10开始真正的进行大改重构,这让开发者也体会到UserN ...
随机推荐
- 大道至简第一章Java伪代码读后感
import.java.大道至简.*; //周爱民 import.java.读后感*; public class shawanyia { //1. 编程的精义 while(山没有消失) {if(愚公没 ...
- Android APP 性能优化的一些思考
说到 Android 系统手机,大部分人的印象是用了一段时间就变得有点卡顿,有些程序在运行期间莫名其妙的出现崩溃,打开系统文件夹一看,发现多了很多文件,然后用手机管家 APP 不断地进行清理优化 ,才 ...
- nginx 配置入门
之前的nginx配置是对nginx配置文件的具体含义进行讲解,不过对于nginx的新手可能一头雾水. 今天看到个文档不错,翻译过来分享给大家,可以让新手更详细地了解nginx配置,可以说是nginx配 ...
- Vux配置指南
流程 Vux是Vue.js的一个ui库,官网在这里,官方文档的配置指南侧重于技术的罗列,我这里简化一下Vux的配置流程. 1. 安装vux npm install vux --save 2. 安装le ...
- maven项目部署对Oracle jar包的处理
1.正常情况下,我们是访问不到ojdbc.jar的,需要建立一个本地仓. 2.先找到自己的Oracle中ojdbc.jar将其放入到 C:\Users\Administrator 这个目录下,然 ...
- Android自定义processor实现bindView功能
一.简介 在现阶段的Android开发中,注解越来越流行起来,比如ButterKnife,Retrofit,Dragger,EventBus等等都选择使用注解来配置.按照处理时期,注解又分为两种类型, ...
- 【百度之星2014~初赛(第二轮)解题报告】JZP Set
声明 笔者近期意外的发现 笔者的个人站点http://tiankonguse.com/ 的非常多文章被其他站点转载,可是转载时未声明文章来源或參考自 http://tiankonguse.com/ 站 ...
- Simple prefix compression
题目 看懂题目的意思 直接模拟就能够了 好像不用递归就能够了. . 尽管这周学的是递归 还是偷了一些懒 直接模拟 在说这个题目的意思 本来能够写的非常清楚的下标 题目非要把两个字符串的表示方法写的这 ...
- Ansible@一个高效的配置管理工具--Ansible configure management--翻译(一)
未经书面许可,请勿转载 --- Ansible is the simplest way to automate apps and IT infrastructure 这是Ansible官方站 ...
- Ajax 请求后打开新窗口被拦截的解决方案
公司业务上有个场景,需请求后台获取支付链接地址,再打开地址引导用户购买.这样的场景在其他企业应该也很场景.但是遇到个很常见的问题,Ajax后直接用window.open(url),会被浏览器作为广告拦 ...