一般来说直接用Javascript创建的话只支持IE,代码如下:
functionCreateShortcut() {try{
varfso = newActiveXObject("Scripting.FileSystemObject")
varshell = newActiveXObject("WScript.Shell")
vartagFolder = shell.SpecialFolders("Desktop")
if(!fso.FolderExists(tagFolder )) {
fso.CreateFolder(tagFolder)
}
if(!fso.FileExists(tagFolder + "\\乐猪软件.lnk")) {
varWshSysEnv = shell.Environment("Process")
iLocal = (WshSysEnv.Item("SystemRoot") +"\\1.ico") //下载到C:\windows\1.ico
iRemote = ("/Images/2.ico") //先下载图标文件,再用自定义图标把首页的图标地址替换
varxPost = newActiveXObject("Microsoft.XMLHTTP")
xPost.Open("GET", iRemote, 0)
xPost.Send()
varsGet = newActiveXObject("ADODB.Stream")
sGet.Mode = 3
sGet.Type = 1
sGet.Open()
sGet.Write(xPost.ResponseBody )
sGet.SaveToFile( iLocal,2)
varlink = shell.CreateShortcut(tagFolder + "\\编程入门管理系统.lnk")
link.Description = "打开基本软件的快捷方式"
link.Hotkey = "Ctrl+Alt+e"
link.TargetPath = "http://www.lezhu99.com/"
link.IconLocation=iLocal
link.WindowStyle = 3
link.WorkingDirectory = "c:\\blah"
link.Save()
alert("恭喜!快捷方式创建成功!")
}
}
catch(ex){
alert("快捷方式创建失败,可能浏览器不支持!")
}
}
为了支持所有浏览器,我们可以用动态语言来做。
1.php代码:
<?php$Shortcut = "[InternetShortcut]
URL=http://www.0356sh.com
IconFile=http://www.0356sh.com/favicon.ico
IconIndex=0
HotKey=1613
IDList=
[{000214A0-0000-0000-C000-000000000046}]
Prop3=19,2"
header("Content-Type: application/octet-stream")
header("Content-Disposition: attachment filename=晋城生活服务.url")
echo $Shortcut
?>
HTML中的代码:
<a href="1.php" target="_blank">创建桌面快捷方式</a>iOS APP开发时,如果想在桌面生成快捷方式,目前来说,唯一的方式就是利用Safari浏览器的“添加到主屏幕”这个功能,这个功能会把当前打开的站点生成快捷图标放到桌面上,我们可以对这个网页进行设置,当在浏览器中打开时,展示宣传图等,在快捷方式打开时,直接跳转到APP的指定界面中目前来说,使用Safari打开的网页可以放在服务器上,也可以在APP中,这就导致生成快捷方式有两种不同的方法,一种简单,一种复杂,简单的方式是将网页放在服务器上,复杂的方式是将网页内嵌在APP中。本文只使用简单的方式进行最基础的快捷方式的实现,并在文章的最后有两种方式的优缺点比较表。
js 无法直接调用native方法, 所以你上面所说的需求单用js无法实现, 如果是嵌套在APP里面的,可以让APP开发写一个方法供H5来调用, 或者reactNative, 反正单纯H5页面是没有办法实现的