代码之家  ›  专栏  ›  技术社区  ›  Hristo

重写ActiveX功能的好方法是什么?

  •  1
  • Hristo  · 技术社区  · 14 年前

    我工作的地方所有的内部网页都是专门为IE6设计和构建的,但现在他们想让我研究一下将其转移到Firefox、Safari和其他主要浏览器需要什么…而且ActiveX不能在Firefox中工作。

    那么,什么是一个好方法来获取当前的ActiveX功能,完全废弃ActiveX并重写该功能呢?基本上,我在寻找什么是一个好的解决办法,使事情工作的建议。 在Mac上的浏览器上 ?

    使用Java Applet或ActionScript重写是一个好主意吗?在做了一些研究之后,没有办法将ActiveX集成到Mac上,那么有什么可能的解决方案可以使Mac上的工作正常进行呢?

    如果我的解释不清楚,请告诉我…我会尽量解释清楚的。

    更新:一些ActiveX功能的示例:

    var rp_UserSettings = null;
    var xmlhttp = new ActiveXObject("MSXML2.XmlHttp");
    var serverResponseGet = "";
    var serverResponseSet = "";
    var serverResponseErrorDesc = "";
    var rpFieldInfo = null;
    var results = [];
    
    /*Retrieves the user profile xml and stores it as an XML DOM in rp_UserSettings.*/
    function retrieveUserSettings(){
        var PageURL = RoamProfURL + '/getprofile' + '?today=' + escape((new Date()).toString());
        xmlhttp.Open("GET", PageURL, false);
        xmlhttp.Send();
        rp_UserSettings = xmlhttp.responseXML;
        serverResponseGet = xmlhttp.responseText;
        rp_retCode = rp_UserSettings.selectSingleNode("//returncode");
        if (rp_retCode == null){
            rp_UserSettings = null;
        }
        return ;
    }
    

    谢谢, 希斯托

    3 回复  |  直到 14 年前
        1
  •  1
  •   Community Reversed Engineer    7 年前

    @杰森说得很有道理 here 关于javascript 查询 以及HTML5,事实上,它确实取决于您的ActiveX实际上在做什么。

    如果你的网站需要直接与客户端操作系统接口,那么你需要一个可以在客户端计算机上运行的解决方案(ActiveX(专有的和痛苦的),或者Java)。如果您的网站只是收集用户数据,那么您可以使用服务器端解决方案,您的网站将不受浏览器的影响。

    您可以在服务器端提供许多功能,而您的浏览器不再重要。例如,如果选择使用ASP.NET,则运行Windows服务器,服务器完成所有工作,而不考虑客户端浏览器。

        2
  •  1
  •   Jason    14 年前

    这取决于ActiveX提供的功能。许多以前需要ActiveX的函数现在可以通过JavaScript和HTML5实现。

    对于Mac,您有一个非常好的HTML 5 Safari平台。

        3
  •  1
  •   Marcus Adams    14 年前

    您是否使用ActiveX与浏览器和/或操作系统进行交互?否则,您的整个应用程序可能会使用JavaScript变成RIA Web应用程序。如果你还想瞄准不支持flash的ipad,actionscript(flash)可能不是个好主意。

    你可以使用浏览器(Java Applet)或桌面(Java)应用程序,但是如果你可以用Web应用程序和动态HTML来做的话,它可能会过份。

    我一直在把东西从传统的桌面应用程序转换成Web应用程序,而浏览器确实是一个很好的、轻量的GUI/客户机。