javascript的ActiveXObject方法问题。

最近要做一个功能,用js判断客户端的某个文件是否存在。仅需支持IE浏览器,使用ActiveXObject方法的时候发现一个奇怪的问题。我写了一个html文件,file_t... 最近要做一个功能,用js判断客户端的某个文件是否存在。仅需支持IE浏览器,使用ActiveXObject方法的时候发现一个奇怪的问题。
我写了一个html文件,file_test.html,内容如下:
<script type="text/javascript">
fso=new ActiveXObject("Scripting.FileSystemObject");
alert(fso);
</script>
只有这四行代码.IE8中测试,得到结果如图:

创建对象成功.
查看源代码如下:

然后我又在同目录下写了一个PHP文件file_test.php,内容如下:
<?php
include('file_test.html');
?>
仅仅是引入了这个html文件,测试结果如下:

查看PHP页面的源代码代码,结果如下:

和我的html文件中的源代码一模一样,为什么就一个可以创建对象,一个不可以创建对象呢?它的提示信息说服务器不能创建对象,但是php要做的就是把这段代码输出到浏览器,然后让浏览器去创建对象啊.
我怀疑是服务器端做了什么处理,于是这样测试:
<?php
$fso=<<<eof
<script type="text/javascript">
fso=new ActiveXObject("Scripting.FileSystemObject");
alert(fso);
</script>
eof;
echo strlen($fso);
?>
可以正确输出字符串的长度,这是不是说明服务器端没有做处理呢?百思不得其解~~~

如果这种方法行不通,那有其他的什么办法呢?不管用什么方法,我现在的需求就是去判断客户端是否有某个文件,求救了~~~
我们访问淘宝,联系卖家的时候,如果客户端安装了阿里旺旺,就会自动启动阿里旺旺,它肯定需要去判断客户端是否安装了阿里旺旺吧?那淘宝是怎么做到的呢?
大神们呐~~~
展开
 我来答
匿名用户
2015-07-10
展开全部
  JavaScript中ActiveXObject对象是启用并返回 Automation 对象的引用。
  使用方法:
  newObj = new ActiveXObject( servername.typename[, location])

  ActiveXObject 对象语法有这些部分:其中newObj是必选项。要赋值为 ActiveXObject 的变量名。
  servername是必选项。提供该对象的应用程序的名称。
  typename是必选项。要创建的对象的类型或类。
  location是可选项。创建该对象的网络服务器的名称。
  注意:ActiveX是微软的东西,所有只有IE才支持。
创作者AHLhc224hw
2012-12-06 · TA获得超过947个赞
知道小有建树答主
回答量:751
采纳率:0%
帮助的人:311万
展开全部
把你服务器站点加任入受信的站点。
有些控件可能没有签名需要把你php服务器站点加入信任站点。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式