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);
?>
可以正确输出字符串的长度,这是不是说明服务器端没有做处理呢?百思不得其解~~~
如果这种方法行不通,那有其他的什么办法呢?不管用什么方法,我现在的需求就是去判断客户端是否有某个文件,求救了~~~
我们访问淘宝,联系卖家的时候,如果客户端安装了阿里旺旺,就会自动启动阿里旺旺,它肯定需要去判断客户端是否安装了阿里旺旺吧?那淘宝是怎么做到的呢?
大神们呐~~~ 展开
我写了一个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才支持。
使用方法:
newObj = new ActiveXObject( servername.typename[, location])
ActiveXObject 对象语法有这些部分:其中newObj是必选项。要赋值为 ActiveXObject 的变量名。
servername是必选项。提供该对象的应用程序的名称。
typename是必选项。要创建的对象的类型或类。
location是可选项。创建该对象的网络服务器的名称。
注意:ActiveX是微软的东西,所有只有IE才支持。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询