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

时间:2010-06-23 17:05:55

标签: macos activex cross-browser applet

我工作的地方的所有内部网页都是专为IE 6设计和构建的,但现在他们希望我研究迁移到Firefox和Safari以及其他主要浏览器所需的内容......而ActiveX在Firefox中不起作用。

那么采用什么是ActiveX功能并完全废弃ActiveX并重写功能的好方法呢?基本上,我正在寻找关于什么是在Mac上的浏览器上工作的良好解决方案的建议?

使用Java Applets或ActionScript重写是一个好主意吗?在做了一些研究之后,没有办法在Mac上集成ActiveX,那么什么是可以在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 个答案:

答案 0 :(得分:1)

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

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

答案 1 :(得分:1)

对于Javascript / Query 和HTML5,@ Jason有一个很好的观点here,事实上它确实取决于你的activex实际上在做什么。

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

您可以在浏览器无关紧要的情况下提供许多功能服务器端。例如,如果您选择使用ASP.NET,则运行Windows Server,无论客户端浏览器如何,服务器都会执行所有工作。

答案 2 :(得分:1)

您是否使用ActiveX与浏览器和/或操作系统进行交互?如果没有,您的整个应用程序可能会变成使用JavaScript的RIA Web应用程序。如果您还想要定位不支持Flash的iPad,那么ActionScript(Flash)可能不是一个好主意。

您可以使用浏览器(Java applet)或桌面(Java)应用程序,但如果您可以使用Web应用程序和动态HTML进行操作,那么它可能会有些过分。

我一直在将旧桌面应用程序转换为Web应用程序,浏览器确实可以构建一个漂亮,轻量级的GUI /客户端。