Heim >Web-Frontend >js-Tutorial >MC Dialog js弹出层 完美兼容多浏览器(5.6更新)_javascript技巧
效果图:
MC Dialog 功能特点
1.支持键盘操作(esc关闭,enter执行当前获得焦点按钮的事件,屏蔽了ctrl键盘,屏蔽了tab键真正实现了一个模拟浏览器自带对话框的功能)
2.支持焦点智能移动(当焦点移出层外时,自动将焦点移回层或者有按钮则移到按钮上,保证焦点始终在层上,确保快捷键操作正确)
3.智能闪烁提示功能(当焦点移出层外部,比如你在层外点击了,则层会闪烁提示你必须在当前层操作,这里完美模拟了浏览器自带对话框的操作)
4.支持按钮外接回调事件(可以自定回调事件,绑定给按钮)
5.支持拖拽功能(自己写的拖拽,效率相当高,在各浏览器表现一直,无拖帧现象)
6.支持穿透iframe(可以穿透iframe,MC Dialog开发的基础就在于穿透iframe取代frameset,所以MC Dialog永远是寄存在最顶级的window对象下的dom中,因此穿透iframe是no problems)
7.支持多个MC.Dialog共存 队列操作功能 可以在弹出层中继续弹出层(MC Dialog是保存在Dialog队列中的,可以弹出5000个MC Dialog, 并且你都可以正确操作到每一个,而且你只能操作当前能看到的这一个,而不会出现任何脚本错误,MC Dialog却别与传统弹出层的一个主要特点就在于,MC Dialog不仅仅只是为了简单的应用或者特效或者为了与众不同,而是考虑了完全取代传统浏览器自带对话框而做的,因此MC Dialog 是完全具备了浏览器自带的所有功能的)
8.完美的兼容性,内存消耗少,稳定(在ie6+,safari,chrome,firefox,oprea,the world等浏览器上测试表现一直) ps:由于没有处理ie6的半透明问题这里有一点点瑕疵,不过ie6的使用已经很少(虽然开始做了解决方案,但考虑实际没有添加)
9.在申明了w3c和未申明w3c 或者在顶部未有doctype dtd等情况下任然表现一直
10.支持访问iframe和iframe访问父窗口对象 MC Dialog将内嵌的iframe对象存储,可以简单访问到iframe iframe始终寄存在顶级窗口window下的dom中 因此访问父窗口和iframe都是很容易的
经过测试MC Dialog 在界面布局 功能执行 等几乎已经完美
推荐使用MC Dialog 换掉浏览器一成不变的对话框
MC.Dialog是免费而且是开源的 你可以随意使用 但为了尊重个人劳动成果 请加注版权信息 谢谢
MC Dialog 刚刚推出全新修改办,希望获得大家的支持
MC Dialog 开发的日志 http://blog.sina.com.cn/zkunet
如果觉得好,请大家顶起(也请大家保留文件中的版权申明)
如果在使用中发现任何问题或者有什么好的建议,请在此跟帖
5.6修正
1.采用新的拖拽方法 解决较大MC Dialog在ff下拖动出先的一些视觉上的bug
2.优化了相关代码
5.3修正:
1. ie6支持半透明 和阴影
2. ie6覆盖select
3. 取消ie下的闪烁提示 改为提示音 暂未处理
4. 修正检测id的函数写法错误
5. 拖拽细节修改 不允许将对象拖出可视范围
演示地址 http://demo.jb51.net/js/MCDialog/index.html
下载地址 http://www.jb51.net/jiaoben/26152.html