外观模式笔记
1. 为一组复杂的子系统接口提供一个更高级的统一接口, 通过这个接口使得对子系统接口的访问更容易;
2. 简化底层接口的复杂性,解决浏览器兼容性问题。
3.也会用于对底层结构兼容性做统一封装来简化用户使用
以事件方法作为demo实例
添加元素事件有三种:addEventListener,attachEvent,DOM0级事件如onclick
DOM0级事件有被覆盖的风险,应使用DOM2级事件处理程序提供的方法addEventListener来实现,但IE(低于9)不支持,其次考虑使用attachEvent,最后DOM0级事件
function addEvent(dom, type, fn)
{
//对于支持dom2级事件处理程序 addEventListener方法的浏览器
if(dom.addEventListener)
{
dom.addEventListener(type, fn, false);
//对于不支持addEventListener方法但支持attachEvent方法的浏览器
}
else if(dom.attachEvent)
{
dom.attachEvent('on' + type, fn);
//不支持attachEvent方法的浏览器
}
else
{
dom['on' + type] = fn;
}
}
来源:博客园