在尝试让我们的应用程序在 Firefox 中运行时(我是 X-Browser 支持的大力支持者,但我们的首席开发人员拒绝我说 IE 已经足够好)。所以我正在做一个小项目,看看要转换多少工作。
我马上就遇到了问题。
main.aspx 页面使用仅 IE 方法通过 htc 文件添加行为的方法绑定到 Web 服务,该方法由 VS 我相信自动生成。
Firefox 不支持此功能,但有一个 xml 绑定文件可用于启用 htc 支持(请参阅此处:http ://dean.edwards.name/moz-behaviors/overview/ )。这些示例在 FF3 中有效,但是当我像往常一样使用 webservice.htc 时,例如:
//Main.aspx
/*SNIP*/
<style type="text/css" media="all">
#webservice
{
behavior:url(webservice.htc);
-moz-binding:url(bindings.xml#webservice.htc);
}
</style>
</head>
<body>
<div id="webservice"></div> <!-- we use this div to load the webservice stuff -->
/*SNIP*/
//Main.js
webservice.useService(url + asmpath + "/WebServiceWrapper.asmx?WSDL","WebServiceWrapper");
我得到 webservice 未定义(在 IE 中工作正常),我显然尝试过
var webservice = document.getElementById("webservice")
和
$("#webservice").useService(url + asmpath + "/WebServiceWrapper.asmx?WSDL","WebServiceWrapper");
同样,这只是在 Firebug 中给了我“未定义 useService”。这让我相信绑定不起作用。但是,我可以在 Firebug 控制台窗口中看到 Firefox 正在加载 webservice.htc。
有人有这方面的经验吗?
我是否必须重写 web 服务的调用方式?
干杯,罗伯