对FckEditor编辑器在MAXTHON浏览器下选择服务器文件对话框显示不正常的改进

用过FckEditor的朋友都知道,它的选择图片对话框中“浏览服务器”按钮。点击该按钮可以浏览以前已经上传过的文件。不过这个按钮点击后弹出的对话框在MAXTHON浏览器下是以标签形式打开的,这样模态对话框就始终显示在了浏览文件窗口之前,要想选择文件得先关掉模态对话框。先前有朋友提出把弹出模态对话框的功能改为ShowModlessDialog,这个终究不是解决之道,现将我的解决方法写下来与大家分享:
思路就是基于IE内核的浏览器采用模态对话框弹出浏览服务器窗口,其他的仍然window.open不变

1:修改\fckeditor\editor\dialog\common\fck_dialog_common.js

 1 function OpenFileBrowser( url, width, height )
 2 {
 3     // oEditor must be defined.
 4 
 5     var iLeft = ( oEditor.FCKConfig.ScreenWidth  - width ) / 2 ;
 6     var iTop  = ( oEditor.FCKConfig.ScreenHeight - height ) / 2 ;
 7 
 8     var sOptions = "toolbar=no,status=no,resizable=no,dependent=yes,scrollbars=yes" ;
 9     sOptions += ",width=" + width ;
10     sOptions += ",height=" + height ;
11     sOptions += ",left=" + iLeft ;
12     sOptions += ",top=" + iTop ;
13 
14     // The "PreserveSessionOnFileBrowser" because the above code could be
15     // blocked by popup blockers.
16     if ( oEditor.FCKConfig.PreserveSessionOnFileBrowser && oEditor.FCKBrowserInfo.IsIE )
17     {
18         // The following change has been made otherwise IE will open the file
19         // browser on a different server session (on some cases):
20         // http://support.microsoft.com/default.aspx?scid=kb;en-us;831678
21         // by Simone Chiaretta.
22         var oWindow = oEditor.window.open( url, 'FCKBrowseWindow', sOptions ) ;
23 
24         if ( oWindow )
25         {
26             // Detect Yahoo popup blocker.
27             try
28             {
29                 var sTest = oWindow.name ; // Yahoo returns "something", but we can't access it, so detect that and avoid strange errors for the user.
30                 oWindow.opener = window ;
31             }
32             catch(e)
33             {
34                 alert( oEditor.FCKLang.BrowseServerBlocked ) ;
35             }
36         }
37         else
38             alert( oEditor.FCKLang.BrowseServerBlocked ) ;
39     }
40     else
41     {    
            //这里是修改部分
42         if(oEditor.FCKBrowserInfo.IsIE)
43         {
44             window.showModalDialog(url+"&rdm="+new Date(),window,"status:false;dialogWidth:"+width+"px;dialogHeight:"+height+"px\"");
45         }
46         else
47         {
48             window.open( url, 'FCKBrowseWindow', sOptions ) ;
49         }
50     }
51 }

2:修改\fckeditor\editor\filemanager\browser\default\frmresourceslist.html

function OpenFile( fileUrl )
{
    if( window.dialogArguments)
    {
        window.dialogArguments.SetUrl( fileUrl ) ;
        window.close() ;
        window.dialogArguments.focus() ;
    }
    else
    {    
        window.top.opener.SetUrl( fileUrl ) ;
        window.top.close() ;
        window.top.opener.focus() ;    
    }
}

这样就没有问题了。

posted on 2007-04-09 11:19 Seraph's Zone(WelCome) 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/Wang-Seraph/archive/2007/04/09/705447.html

对FckEditor编辑器在MAXTHON浏览器下选择服务器文件对话框显示不正常的改进相关推荐

  1. 对FckEditor编辑器在MAXTHON浏览器下选择服务器文件对话框显示不正常的改进对FckEditor编辑器在MAXTHON浏览器下选择服务器文件对话框显示不正常的改进

    用过FckEditor的朋友都知道,它的选择图片对话框中"浏览服 务器"按钮.点击该按钮可以浏览以前已经上传过的文件.不过这个按钮点击后弹出的对话框在MAXTHON浏览器下是以标签 ...

  2. IE浏览器中选择本地文件

    IE浏览器中选择本地文件源码如下: <!DOCTYPE html> <html> <head> <meta http-equiv="content- ...

  3. 用浏览器访问云服务器文件,浏览器访问云服务器文件

    浏览器访问云服务器文件 内容精选 换一换 安装传输工具在本地主机和Windows云服务器上分别安装数据传输工具,将文件上传到云服务器.例如QQ.exe.在本地主机和Windows云服务器上分别安装数据 ...

  4. 通过浏览器访问linux服务器文件(图片)

    通过浏览器访问linux服务器文件(图片) 一. 安装jdk yum install -y java-1.8.0-openjdk-devel.x86_64 查看java是否安装成功 java -ver ...

  5. Centos7.5 -Vim编辑器和恢复ext4下误删除的文件-Xmanager工具

    本节所讲内容: 5.1 vim的使用 5.2 实战:恢复ext4文件系统下误删除的文件 5.3 实战:使用xmanager等远程连接工具管理Linux 5.1 vim主要模式介绍,vim命令模式. 5 ...

  6. linux删除文件_【Linux实战】Vim编辑器和恢复ext4下误删除的文件

    学神IT教育:XueGod-IT 良心教育 贴心服务 1.  vim主要模式介绍,vim命令模式. 确保系统已经安装了VIM工具 [root@panda ~]# rpm -qf `which vim` ...

  7. 科普|不同协议下远程服务器文件上传_下载优劣对比

    作为一个程序员,如果不知道如何进行远程服务器的文件上传与下载,实在是一件尴尬的事情.打开百度,搜索「远程服务器 上传下载」,你能得到 63,100,000 个搜搜结果,五花八门的操作方式的让人眼花缭乱 ...

  8. Vue项目中使用基于pdf.js的vue-pdf插件在pc浏览器下阅览PDF文件

    最近项目中需求为在浏览器上阅览PDF格式的文件,之前没有写过,随即上网查阅,发现大家常使用的为两个插件. 其一是火狐出品的pdf.js,github地址:https://github.com/mozi ...

  9. 提高ipad浏览器下大尺寸xml文件解析的性能

    昨天,客户报了个Bug过来:html5应用在ipad下卡住不动了.按照他发过来的地址,初步诊断是xml解析的性能问题.应用初始化时要加载几个xml配置文件,客户给的地址中,一个配置文件有800多K(文 ...

最新文章

  1. Selenium(3)
  2. redis 3.0 集群__数据迁移和伸缩容
  3. MySQL光标的使用
  4. mybatis 依赖于jdbc_优于jdbc的mybatis框架入门
  5. 我必须要吐槽,你们的数据管理都是错的,这才是规划和产出
  6. Django周总结一
  7. python的numpy入门简介
  8. 读《遇见未知的自己》有感
  9. 移动开发者应注意的2012年五趋势
  10. html5 移动端开发模板,搭建一个vue-cli的移动端H5开发模板
  11. arduino红外两路寻迹c语言程序,Arduino寻迹小车程序
  12. 【Love2d从青铜到王者】第七篇:Love2d之对象
  13. Japanese的意思
  14. 2050年这些职业将逐渐被AI(人工智能)取代
  15. 公司常用邮箱地址大全,公司企业邮箱怎样群发邮件?
  16. 零基础应该怎么学剪辑,大概要学多长时间?在磨金石教育学靠谱吗?
  17. jQuery UI 拖拽功能
  18. 江苏农村商业银行计算机类笔试考什么时候,2020江苏农商行春季校园招聘笔试考什么?...
  19. c语言中mul的用法,MUL指令(无符号数的乘法指令)
  20. 常用的Linux发行版

热门文章

  1. web复习--web脚本前端设计从入门到实战【清华大学出版社】课后选择题
  2. 再获金融行业认可 冲量在线获第五届浦发银行国际金融科技创新大赛提名奖
  3. input输入身份证号 实现自动生成个人信息
  4. 为敬畏生命而生—南丁格尔玫瑰图制作
  5. 基于STM32单片机的温度报警器Proteus仿真
  6. 设计-来做一个Windows hello的小动画
  7. 【游戏开发实战】使用Unity制作像天天酷跑一样的跑酷游戏——第六篇:金币创建与吃金币
  8. Chrome 浏览器扩展神器油猴
  9. 保险业务与系统——LOMA 290 保险公司运营——第十三讲——信息管理
  10. MIFARE系列逻辑加密卡的安全性分析