说明
通过 事件对象,可以获取 源控件
兼容性 问题
IE下,event 对象有 srcElement 属性,通过该属性可以获取 源控件
Firefox下, event 对象有 target 属性,通过该属性可以获取 源控件
但这 2个属性的作用是相同的,但是,如何写代码,可以在 不同的浏览器上运行呢?
提示:Edge浏览器,srcElement 、 target 属性 都有
解决方法
使用
var srcElement = event.srcElement ? event.srcElement : event.target;
案例
电话号码控件,失去焦点时,做校验,第一位是 1,有 11 个字符就认为符合要求,否则给出提示
(此判断不够严谨,仅做案例)
电话号:<input type="text" id="phone">
<script>
window.onload = function(){
var phone = document.getElementById("phone")
phone.onblur = function(event){
event = event || windows.event
// 获取事件的控件
var srcElement = event.srcElement ? event.srcElement : event.target;
// 获取控件的值
var value = srcElement.value
console.log(value)
// 如果电话号不是11位,或者第一位不是1,就给出提示
if(value.length !=11 || value.substring(0,1) != "1"){
alert("请输入正确的手机号!")
return
}
}
}
</script>