新网创想网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
// MAP1名称
网站建设哪家好,找创新互联!专注于网页设计、网站建设、微信开发、成都微信小程序、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了鹤壁免费建站欢迎大家使用!
var mapName1 = "Map1";
// MAP1ID
var mapId1 = "MapId1";
// 指定DIV名称
var divnId = "mask";
// 图片路径
var imgPath = "";
main = function(type) {
var obj;
switch(type) {
case "aa" :
// 指定图片及热点对象取得
obj = imgMapList[0];
// 创建图片及热点
creatImpAndHot(obj);
break;
}
}
creatImpAndHot = function(hotObj) {
// 创建热点MAP对象
var map = document.createElement_x("Map");
// 设置MAP名称
map.name = mapName1;
// 设置MAPID
map.id = mapId1;
// 热点列表取得
var length = hotObj.map.length;
for (var i = 0; i length; i++) {
var tempMap = hotObj.map[i];
// 创建热区对象
area = document.createElement_x("area");
// 设置热区类型
area.shape = tempMap.shape;
// 设置热区坐标
area.coords = tempMap.coords;
// 设置热区对应链接
area.href = tempMap.href;
// 设置热区对应事件
area.onclick = tempMap.onclick;
// 设置热区id
area.id = tempMap.id;
// 向MAP中追加热区对象
map.appendChild(area);
}
// 创建图片对象
var img = document.createElement_x("img");
// 图片ID
img.id = hotObj.img.id;
// 设置图片链接
img.src = hotObj.img.imgName;
// 设置图片对应热区MAP
img.useMap="#" + mapName1;
// 设置图片尺寸
img.width = hotObj.img.width;
img.height = hotObj.img.height;
// 边框
img.border = "0";
// 设置图片ID
img.id = hotObj.id;
// 清空指定DIV内容
document.getElementByIdx_x(divnId).innerHTML = '';
// 向DIV区添加MAP对象
document.getElementByIdx_x(divnId).appendChild(map);
// 向DIV区添加图片对象
document.getElementByIdx_x(divnId).appendChild(img);
}
testClick = function() {
alert();
}
creatImgAndMap = function(){
var tempArray = new Array();
var tempObj = new Object();
// 图片ID
tempObj.img = new Object();
tempObj.img.id = "test1";
// 图片名称(只要图片名称,路径由公共变量设置)
tempObj.img.imgName = "113.jpg";
// 设置图片尺寸
tempObj.img.width = "640";
tempObj.img.height = "200";
var tempMap;
tempObj.map = new Array();
// 热点1
tempMap = new Object();
// 热区ID
tempMap.id = "test1_hot1"
// 类型
tempMap.shape = "rect";
// 热区坐标
tempMap.coords = "159,167,238,191";
// 链接
tempMap.href = "#";
// 单击事件
tempMap.onclick = testClick;
// 添加到列表中
tempObj.map[0] = tempMap;
// 热点2
tempMap = new Object();
// 热区ID
tempMap.id = "test1_hot2"
// 类型
tempMap.shape = "rect";
// 热区坐标
tempMap.coords = "147,7,286,33";
// 链接
tempMap.href = "#";
// 单击事件
tempMap.onclick = testClick;
// 添加到列表中
tempObj.map[1] = tempMap;
// 将图片及相应热区信息添加到列表中
tempArray[0] = tempObj;
return tempArray;
};
// 热点映射
var imgMapList = creatImgAndMap();
!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ""
html xmlns=""
head
meta http-equiv="Content-Type" content="text/html; charset=utf-8" /
title无标题文档/title
script type="text/javascript" src="img.js" /script
script type="text/javascript"
function abc(){
main("aa");
}
/script
/head
body
div id="mask"
input type="button" value="set" onClick="abc()"
/div
/body
/html
字符串2013-10-05T02:00:00.000+09:30可以使用split方法分割
var fromDate= "2013-10-05T02:00:00.000+09:30".split('T').shift().split('-'); //得到["2013", "10", "05"]
如此就可以设置进Date对象
-----------------
如果不想与本地时区有关联的话就统一用UTC的方法好了
具体时区再自己计算
比如,+9:30区
var d = new Date();
//9小时就是9*60分钟,加上30分钟,再转换为毫秒
d.setTime(d.getTime()+(9*60+30)*60*1000);
d.toUTCString();
-----------------
Date对象的UTC有关的方法:
getUTCDate() 根据世界时从 Date 对象返回月中的一天 (1 ~ 31)
getUTCDay() 根据世界时从 Date 对象返回周中的一天 (0 ~ 6)
getUTCMonth() 根据世界时从 Date 对象返回月份 (0 ~ 11)
getUTCFullYear() 根据世界时从 Date 对象返回四位数的年份
getUTCHours() 根据世界时返回 Date 对象的小时 (0 ~ 23)
getUTCMinutes() 根据世界时返回 Date 对象的分钟 (0 ~ 59)
getUTCSeconds() 根据世界时返回 Date 对象的秒钟 (0 ~ 59)
getUTCMilliseconds() 根据世界时返回 Date 对象的毫秒(0 ~ 999)
setUTCDate() 根据世界时设置 Date 对象中月份的一天 (1 ~ 31)
setUTCMonth() 根据世界时设置 Date 对象中的月份 (0 ~ 11)
setUTCFullYear() 根据世界时设置 Date 对象中的年份(四位数字)
setUTCHours() 根据世界时设置 Date 对象中的小时 (0 ~ 23)
setUTCMinutes() 根据世界时设置 Date 对象中的分钟 (0 ~ 59)
setUTCSeconds() 根据世界时设置 Date 对象中的秒钟 (0 ~ 59)
setUTCMilliseconds() 根据世界时设置 Date 对象中的毫秒 (0 ~ 999)
toUTCString() 根据世界时,把 Date 对象转换为字符串
一个div,一个img,div的z-index比img的z-index大,就可以挡着了,或者直接操作图片了,太麻烦了
经过试验,虽然设置process.env.TZ的方法不能用了,但我们完全可以自己实现一套代码出来。
为此,我们首先在Date对象的prototype上声明一个map结构作为属性,用于存储时区名称和偏移量的关系,然后对Date类的Date方法进行修改,如果没有声明process.env.TZ变量,就默认返回原来的date对象,如果声明了该属性,就先到对应的数组中进行搜索,然后返回修改后的date对象。
process.env.TZ = "America/New_York";Date.prototype.TimeZone = new Map([
['Europe/London',0],
['Asia/Shanghai',-8],
['America/New_York',5]
])Date.prototype.zoneDate = function(){
if(process.env.TZ == undefined){ return new Date();
}else{ for (let item of this.TimeZone.entries()) { if(item[0] == process.env.TZ){ let d = new Date();
d.setHours(d.getHours()+item[1]); return d;
}
} return new Date();
}
}var date = new Date().zoneDate();
console.log(date);
在上面的代码里,如果声明了process.env.TZ这一属性,再调用zoneDate就能得到对应时区的date啦