------------------------------------------监听回车事件兼容-----------------------------------------------------------
var keyCode=event.keyCode ? event.keyCode:event.which?event.which:event.charCode;
if(keyCode == "13"){}
----------------------------------------------------END-------------------------------------------------------------------
--------------------------------------------------倒计时------------------------------------------------------------------
var wait=60;
var TIMER = setTimeout(function(){
if(wait==0) {
wait=60;//wait 为倒计时 目前暂定60秒
} else{
console.log(wait);
wait--;
TIMER = setTimeout(arguments.callee,1000);
}
},1000);
----------------------------------------------------END------------------------------------------------------------------
--------------------------------------------------锚点滚动---------------------------------------------------------------
<div class="cd_leftMenu">
<ul id="treeDemo" class="ztree">
<li>111</li>
<li>222</li>
<li>333</li>
<li>444</li>
<li>555</li>
<li>666</li>
<li>777</li>
<li>888</li>
<li>999</li>
</ul>
</div>
<div class="cd_rightCon">
<div style="height: 600px;background-color: #eee;text-align: center;font-weight: bold;font-size: 18px;" id="111">11111111111</div>
<div style="height: 600px;background-color: #eee;text-align: center;font-weight: bold;font-size: 18px;" id="222">22222222222</div>
<div style="height: 600px;background-color: #eee;text-align: center;font-weight: bold;font-size: 18px;" id="333">33333333333</div>
<div style="height: 600px;background-color: #eee;text-align: center;font-weight: bold;font-size: 18px;" id="444">44444444444</div>
<div style="height: 600px;background-color: #eee;text-align: center;font-weight: bold;font-size: 18px;" id="555">55555555555</div>
<div style="height: 600px;background-color: #eee;text-align: center;font-weight: bold;font-size: 18px;" id="666">66666666666</div>
<div style="height: 600px;background-color: #eee;text-align: center;font-weight: bold;font-size: 18px;" id="777">77777777777</div>
<div style="height: 600px;background-color: #eee;text-align: center;font-weight: bold;font-size: 18px;" id="888">88888888888</div>
<div style="height: 600px;background-color: #eee;text-align: center;font-weight: bold;font-size: 18px;" id="999">99999999999</div>
</div>
$("li").on("click",function(){
$(".cd_rightCon").animate({
scrollTop: $(".cd_rightCon").find('[id="'+ $(this).text()+'"]').offset().top-$(".cd_rightCon").offset().top+$(".cd_rightCon").scrollTop()
},200);
});
----------------------------------------------------END------------------------------------------------------------------
--------------------------------------------自定义区域打印------------------------------------------------------------
<input type="button" value="打印"/>
<!--startprint--><div>container</div><!--endprint-->
$("input").on("click",function(){
bdhtml=window.document.body.innerHTML;//获取当前页的html代码
sprnstr="<!--startprint-->";//设置打印开始区域
eprnstr="<!--endprint-->";//设置打印结束区域
prnhtml=bdhtml.substring(bdhtml.indexOf(sprnstr)+17); //从开始代码向后取html
prnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr));//从结束代码向前取html
window.document.body.innerHTML=prnhtml;
window.print();
window.document.body.innerHTML=bdhtml;
})
----------------------------------------------------END------------------------------------------------------------------
----------------------------------------------------js 编写日历------------------------------------------------------------------
(function(){
/*
* 用于记录日期,显示的时候,根据dateObj中的日期的年月显示
*/
var dateObj = (function(){
var _date = new Date(); // 默认为当前系统时间
return {
getDate : function(){
return _date;
},
setDate : function(date) {
_date = date;
}
};
})();
// 设置calendar div中的html部分
renderHtml();
// 表格中显示日期
showCalendarData();
// 绑定事件
bindEvent();
/**
* 渲染dom
*/
function renderHtml() {
var calendar = document.getElementsByClassName("calendar-box")[0];
var titleBox = document.createElement("div"); // 标题部分
var bodyBox = document.createElement("div"); // 日历部分
// 标题部分
titleBox.className = 'calendar-title-box';
titleBox.innerHTML = "<span class='prev-month' id='prevMonth'></span>"+
"<span class='calendar-title' id='calendarTitle'></span>"+
"<span id='nextMonth' class='next-month'></span>";
calendar.appendChild(titleBox);
// 设置表格区的html结构
bodyBox.className = 'calendar-body-box';
//表头
var _headHtml = "<tr>" +
"<th>日</th>" +
"<th>一</th>" +
"<th>二</th>" +
"<th>三</th>" +
"<th>四</th>" +
"<th>五</th>" +
"<th>六</th>" +
"</tr>";
var _bodyHtml = "";
// 一个月最多31天,所以一个月最多占6行表格
for(var i = 0; i < 6; i++) {
_bodyHtml += "<tr>" +
"<td><span></span></td>" +
"<td><span></span></td>" +
"<td><span></span></td>" +
"<td><span></span></td>" +
"<td><span></span></td>" +
"<td><span></span></td>" +
"<td><span></span></td>" +
"</tr>";
}
bodyBox.innerHTML = "<table id='calendarTable' class='calendar-table'>" +
_headHtml + _bodyHtml +
"</table>";
// 添加到calendar div中
calendar.appendChild(bodyBox);
}
/**
* 表格中显示数据,并设置类名
*/
function showCalendarData() {
var _year = dateObj.getDate().getFullYear();
var _month = dateObj.getDate().getMonth() + 1;
var _dateStr = getDateStr(dateObj.getDate());
// 设置顶部标题栏中的 年、月信息
var calendarTitle = document.getElementById("calendarTitle");
var titleStr = _dateStr.substr(0, 4) + "年" + _dateStr.substr(4,2) + "月";
calendarTitle.innerText = titleStr;
// 设置表格中的日期数据1a
var _table = document.getElementById("calendarTable");
var _tds = _table.getElementsByTagName("td");
var _firstDay = new Date(_year, _month - 1, 1); // 当前月第一天
for(var i = 0; i < _tds.length; i++) {
var _thisDay = new Date(_year, _month - 1, i + 1 - _firstDay.getDay());
var _thisDayStr = getDateStr(_thisDay);
_tds[i].getElementsByTagName("span")[0].innerText = _thisDay.getDate();
//_tds[i].data = _thisDayStr;
_tds[i].setAttribute('data', _thisDayStr);
if(_thisDayStr === getDateStr(new Date())) { // 当前天
_tds[i].className = 'currentDay';
}else if(_thisDayStr.substr(0, 6) === getDateStr(_firstDay).substr(0, 6)) {
_tds[i].className = 'currentMonth'; // 当前月
}else { // 其他月
_tds[i].className = 'otherMonth';
}
}
}
/**
* 绑定上个月下个月事件
*/
function bindEvent() {
var prevMonth = document.getElementById("prevMonth");
var nextMonth = document.getElementById("nextMonth");
addEvent(prevMonth, 'click', toPrevMonth);
addEvent(nextMonth, 'click', toNextMonth);
}
/**
* 绑定事件
*/
function addEvent(dom, eType, func) {
if(dom.addEventListener) { // DOM 2.0
dom.addEventListener(eType, function(e){
func(e);
});
} else if(dom.attachEvent){ // IE5+
dom.attachEvent('on' + eType, function(e){
func(e);
});
} else { // DOM 0
dom['on' + eType] = function(e) {
func(e);
}
}
}
/**
* 点击上个月图标触发
*/
function toPrevMonth() {
var date = dateObj.getDate();
dateObj.setDate(new Date(date.getFullYear(), date.getMonth() - 1, 1));
showCalendarData();
}
/**
* 点击下个月图标触发
*/
function toNextMonth() {
var date = dateObj.getDate();
dateObj.setDate(new Date(date.getFullYear(), date.getMonth() + 1, 1));
showCalendarData();
}
/**
* 日期转化为字符串, 4位年+2位月+2位日
*/
function getDateStr(date) {
var _year = date.getFullYear();
var _month = date.getMonth() + 1; // 月从0开始计数
var _d = date.getDate();
_month = (_month > 9) ? ("" + _month) : ("0" + _month);
_d = (_d > 9) ? ("" + _d) : ("0" + _d);
return _year + _month + _d;
}
})();
----------------------------------------------------END------------------------------------------------------------------
----------------------------------------------------获取鼠标位置---------------------------------------------------------
function mousePosition(ev){
if(ev.pageX || ev.pageY){
return {x:ev.pageX, y:ev.pageY};
}
return {
x:ev.clientX + document.body.scrollLeft - document.body.clientLeft,
y:ev.clientY + document.body.scrollTop - document.body.clientTop
};
}
----------------------------------------------------END------------------------------------------------------------------
----------------------------------------------------计算日期差月份差--------------------------------------------------
function difValue(start,end,type){
if(type == '1'){ //计算日期差
var endD = start.substring(0,4)+','+start.substring(4,6)+','+start.substring(6,8);
var endtime = new Date(endD);
var startD =end.substring(0,4)+','+end.substring(4,6)+','+end.substring(6,8);
var starttime = new Date(startD);
var value= endtime-starttime;
return parseInt(value / (1000 * 60 * 60 * 24));
}else if(type == '2'){//计算月份差
var endD = start.substring(0,4)+','+start.substring(4,6);
var endtime = new Date(endD).getFullYear()*12+new Date(endD).getMonth()+1;
var startD =end.substring(0,4)+','+end.substring(4,6);
var starttime = new Date(startD).getFullYear()*12+new Date(startD).getMonth()+1;
var value= endtime-starttime;
return value;
}
}
----------------------------------------------------END------------------------------------------------------------------
-------------------------------------------------------全屏---------------------------------------------------------------
function requestFullScreen(element) {
var requestMethod = element.requestFullScreen || element.webkitRequestFullScreen || element.mozRequestFullScreen || element.msRequestFullScreen;
if (requestMethod) {
requestMethod.call(element);
}else if(typeof window.ActiveXObject !== "undefined") {
var wscript = new ActiveXObject("WScript.Shell");
if (wscript !== null) {
wscript.SendKeys("{F11}");
}
}
}
----------------------------------------------------END------------------------------------------------------------------
--------------------------------------------获取浏览器参数---------------------------------------------------------------
//获取url传参
function getUrlParam(paramName) {
var rs = new RegExp("(\&\?)" + paramName + "=([^\&#]*)(\&|$|#)","g").exec(window.document.location.href);
if(rs){
return decodeURIComponent(rs[2]);
} else {
return null;
}
}
----------------------------------------------------END------------------------------------------------------------------