1、Android 与 IOS 端 差异:
getTime() 方法差异:解决ios日期时间戳无法显示是因为输入的日期格式的问题,ios无法识别2019-06-27 14:30:07以‘-’区分的日期格式,要以’/'为准,所以写法不一样大致结果NAN。
sta_Date = new Date((data.records[0].Batch_Display_List[i].Start_Time).replace(/-/g,'/')).getTime();
end_Date = new Date((data.records[0].Batch_Display_List[i].End_Time).replace(/-/g,'/')).getTime();
Android 无法识别 8位 颜色。
2、去掉弹窗里的域名:alert confirm
// 去掉 alert 弹窗的域名
window.alert = function(name){
var iframe = document.createElement("IFRAME");
iframe.style.display="none";
iframe.setAttribute("src", 'data:text/plain,');
document.documentElement.appendChild(iframe);
window.frames[0].window.alert(name);
iframe.parentNode.removeChild(iframe);
}
// 去掉 confire 确认弹窗的域名
window.confirm = function (message) {
var iframe = document.createElement("IFRAME");
iframe.style.display = "none";
iframe.setAttribute("src", 'data:text/plain,');
document.documentElement.appendChild(iframe);
var alertFrame = window.frames[0];
var result = alertFrame.window.confirm(message);
iframe.parentNode.removeChild(iframe);
return result;
}
3、手机端点击输入框,禁止输入法手机软键盘弹出:
// 点击选择地区input禁止手机端弹出输入软键盘
$("#addr-show").focus(function(){
document.activeElement.blur();
});
4、遍历获取select多选框的值,并设置最多选择数量
// 点击多选框时遍历,限制最多选择多少项
$("input[name='firstImpression']").click(function() {
var checked_ele = [];
var checked_num = 0;
$("input[name='firstImpression']:checked").each(function () {
checked_ele.push($(this));
checked_num++;
})
if (checked_num > 10) {
checked_ele[10].attr('checked',false)
$('#div12 .errorMessage').text('最多选择10项')
} else {
$('#div12 .errorMessage').text(' ')
}
});
// 遍历多选框,将选择的项拼接
var hobble = '';
$("input[name='firstImpression']:checked").each(function () {
hobble += $(this).val()+';'
})
5、获取某个元素的父级元素 closest 、parents 方法区别
· closest():从当前元素开始匹配寻找,parents():从父元素开始匹配寻找
· closest():逐级向上查找,直到发现匹配的元素后就停止了,parents():一直向上查找直到根元素,然后把这些元素放进一个临时集合中,再用给定的选择器表达式去过滤;
closest('div'):如果直接父元素是div,查找到直接父元素之后就不再查找。返回这个直接父元素。
· closest():返回0或1个元素,parents():可能包含0个,1个,或者多个元素。
6、函数返回值为多个用逗号隔开时,return abc,bcd可以直接用functionName.abc获取对应的返回值
7、escape() 对字符编码 unescape()解码
8、textarea 默认有空格问题 直接写在一行就没有空格。
// 不写在一行,出现空格
<textarea>
</textarea>
// 写在一行,没有空格
<textarea> </textarea>