该脚本适用于 IE 6,但不适用于 IE 8.0
我的用户现在收到“访问被拒绝错误”。我建议我的用户启用哪些设置
本地文件访问以便该脚本可以工作?
<script language="JavaScript">
function viewFile(selectedItem) {
for (i=0; i<selectedItem.options.length; i++) {
if ((selectedItem.options[i] != null) && (selectedItem.options[i].selected == true)) {
window.open("file://"+selectedItem.options[i].text);
}
}
}
</script>
用户可以从本地驱动器中选择多个文件。该列表存储在文本框中,然后单击列表中的一个选定文件。
Example:
selectedItem.options[i].text = C:\Documents and Settings\All Users\Documents\My Pictures\Sample Pictures\Sunset.jpg
您将无法再“开箱即用”地执行此操作,因为 IE8 的安全模型比 IE6 严格得多。
您的选择有限,但可以包括:
开发闪存组件来访问用户的本地驱动器。
将站点实现为 HTA(html 应用程序),以提供对用户文件系统的升级访问。
让访问者通过将您的站点添加到受信任域列表来自定义其 IE 安全设置,然后授予受信任域对 file:/// 协议的访问权限(我不确定哪种安全设置适用于此特定功能,或者是否有一个甚至可用。)
开发一个插件或bho对象(类似于flash组件,但用C++或C#编写)
创建 IE 上下文菜单 -http://msdn.microsoft.com/en-us/library/bb735853(v=vs.85).aspx http://msdn.microsoft.com/en-us/library/bb735853(v=vs.85).aspx这也将拥有更高的特权。
作为旁注,c:\ 路径的正确文件方案应如下所示:
file:///c:/documents%20and%20settings/file.jpg
注意三点/
after file:
、 uri 转义空格以及所有\
被切换到/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)