精华内容
下载资源
问答
  • 里已经提到iOS6的mobile safari将有智能应用通知标题(Smart App Banners)的功能,意解决mobile safari里无法检测第三方应用安装状态的,通过这个功能,可以页面实现应用推荐类的需求。但目前来看,要实现这...

    iOS6的Mobile Safari给前端开发者带来了什么  里已经提到iOS6的mobile safari将有智能应用通知标题(Smart App Banners)的功能,意在解决mobile safari里无法检测第三方应用安装状态的,通过这个功能,可以在页面中实现应用推荐类的需求。但目前来看,要实现这个需求只能在第三方应用中实现。思路也简单,第三方应用可以通过iOS的SDK提供的接口检测到对应的应用是否已经安装,然后在内嵌的UIWebView中打开的连接时追加参数如“?isinstalled=1”之类的参数供web页面获取来判断。web获知状态后可以提示给用户觖发的对应的应用的方案,如“打开应用”,“安装应用”等。

    不过我们今天来说一种不借助第三方应用在mobile safari里就能实现跟上述类似的功能。

    先来看看实现代码:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    <body>
    <div>
    点击连接
    <br />
    如果已经安装网易新闻客户端将<font color="blue">打开对应新闻</font>
    <br />
    否则<font color="red">打开 APPSTORE</font>
    <br />
    <a onClick="javascript:try_to_open_app();" href="newsapp://doc/8A7OMFOJ00014JB6">打开网易新闻</a>
    </div>
    <script language="javascript">
    var timeout;
    function open_appstore() {
    }
     
    function try_to_open_app() {
    timeout = setTimeout('open_appstore()', 300);
    }
    </script>
    </body>

    思路是:
    1.连接的指向打开应用
    2.onclick触发延时打开App Store下载应用页面
    你可以保存以上代码进行测试。那为什么可实现呢?因为当你点击连接的同时是打开应用现时300ms后打开下载页面,如果应用成功打开生命周期就是激活状态,那么浏览器的状态是进入后台,页面里的所有操作都被注销了,显然timeout会被clear掉,但如果你没有成功打开应用即返回404,那么300ms到页面当然会自动跳转了。这里需要注意a元素的target不能是“_blank”,具体原因我想你已经知道了。
    这种方式使用有两个缺点:
    1.如果应用没有安装的话页面在跳转至App Store的同时会弹出打不开网址的提示。当然将连接协议改成itms-apps://可以避免

    2.在设计过程中文案只能是“打开应用”之类,因为检测过程是由mobile safari自动实现的

    有人会想到,可否通过new Image()的onload和onerror实现提前检测应用是否已经安装呢?答案是否定的,测试结果表明,这种方式即使应用已经安装还是会触发onerror。

    展开全文
  • 看到Amazing Alex有个关卡下载的功能,浏览器选择要下载的关卡(如下图)以后会自动跳转回这个游戏。实现这样的功能并不麻烦,通过将网上一些相关教程汇总以后就写了下面的教程分享。实现效果如下,浏览器...

    看到Amazing Alex中有个关卡下载的功能,在浏览器中选择要下载的关卡(如下图)以后会自动跳转回这个游戏。

    实现这样的功能并不麻烦,通过将网上一些相关教程汇总以后就写了下面的教程分享。

    实现效果如下,在浏览器中输入“appABC://”之后就会打开这个程序,打开后程序中会显示跳转过来的链接地址。

    第一步:在info.plist中加入这些内容

    其中URL identifier 可以随便取,URL Schemes 就是实现跳转 URL 协议的名称(可以多个)

    然后,在视图控制器中加入这样的代码用于显示跳转过来的地址:

    +(void) alert:(NSString*)url {

    UIAlertView* av = [[UIAlertView alloc]

    initWithTitle:@"提示"

    message:[NSString stringWithFormat:@"程序通过URL协议打开,该URL为:“%@”", url]

    delegate:self

    cancelButtonTitle:@"确定"

    otherButtonTitles:nil];

    [av show];

    [av release];

    }再在AppDelegate.m中加入这些代码

    -(BOOL) application:(UIApplication*)application handleOpenURL:(NSURL*)url {

    if(!url) {

    return NO;

    }

    NSString* urlString = [url absoluteString];

    [ViewController alert:urlString];

    return YES;

    }就完成了这个看似很酷的功能,至于参数传递的问题大家可以自己研究一下,不难的,这里没有做进去

    附上Demo:URLProtocol.zip (51

    K) 下载次数:12

    展开全文
  • Safari浏览器下载word文件,后缀多拼接了.html,导致打开下载文件乱码,下载的文件名称为test.doc.html,手动去掉多余的后缀.html即可正常访问word文件 2、原因 经排查代码设置head头为text/html导致的,safari才...

    1、遇到的问题

    谷歌和ie下载文件正常

    Safari浏览器下载word文件,后缀多拼接了.html,导致打开下载文件乱码,下载的文件名称为test.doc.html,手动去掉多余的后缀.html即可正常访问word文件

    2、原因

    经排查代码中设置head头为text/html导致的,safari才拼接了后缀.html;修改为

    header("Content-type:applicatoin/octet-stream;charset=utf-8");完美解决问题

    3、转载延伸

    在谷歌、火狐等浏览器中,Content-type 的设置貌似并不重要,但在 Safari 上则有不同:

    • 当 Content-type 设置为 text/html 时,下载的文件会被自动添加上后缀 .html;
    • 当设置为 application/x-msdownload 时,下载的文件会被自动添加后缀 .exe。

    content-type 用于告诉浏览器应该以何种方式处理文件。浏览器会尽量以可识别的方式来打开它,如图一为相关的测试情况:

    content-type

    从图一可以看出,如果你觉得针对不同文件类型区别设置不同的 Content-type 太麻烦,那么将它设置为 applicatoin/octet-stream 是比较好的选择。

    4、延伸

    ie下载时,文件名称乱码,转下编码即可。

    $saveFileName = iconv("UTF-8","GBK",$saveFileName);

    https://blog.csdn.net/qq_36028303/article/details/80939774
    https://www.cnblogs.com/jqy666/p/4957147.html

    展开全文
  • 微信浏览器里面是不可以下载的,要引导用户浏览器中打开。 安卓手机引导浏览器打开之后,是当前的下载页面,但是iOS手机浏览器打开的时候并不是下载页,而是跳转下载页之前的那个页面。 由于是react的项目,...

    关于iOS手机在微信浏览器中选择Safari浏览器打开时页面不是当前页面

    前段时间正在做的一个react的项目,其中有一个功能是一个页面点击按钮的时候跳转到一个下载页。


    微信浏览器里面是不可以下载的,要引导用户在浏览器中打开。


    安卓手机引导在浏览器打开之后,是当前的下载页面,但是iOS手机在浏览器打开的时候并不是下载页,而是跳转下载页之前的那个页面。

    由于是react的项目,所以在做路由跳转的时候我用的方法是:

    this.props.history.push('要跳转的路由')
    

    用这个方法,在微信浏览器跳转到下载页的时候,复制当前的url也是跳转下载页之前的url,所以把这个跳转的路由方法换成原生的

    window.location.href="要跳转的路由"
    

    用上面的方法跳转之后url也会改变,再在微信浏览器选择Safari打开时,就是跳转之后的下载页了。

    展开全文
  • 我的Web应用程序中,我可以选择将“ jqxgrid”数据导出为“ .CSV”格式。它Chrome和Firefox... 但是,如果我``Safari''浏览器中尝试了导出选项,它将另一个选项卡中打开它,而不是将其作为单独的文件下载
  • 发布macOS Big Sur之前,Apple已为macOS Catalina和macOS ...可以通过打开系统偏好设置并选择软件更新选项来下载新的Safari 14更新。安装更新后,您可以按照以下步骤选择自己的“起始页”墙纸。 Mac上启动Safari 1
  • ​现如今想必大部分的 iPhone 用户,都已经使用 iOS 13 系统。...解除下载限制虽然现在许多小伙伴的手机卡,使用的是无限流量套餐,然而 iOS 11、12 系统上,如果不连接 Wi-Fi ,使用 App Store 下载超过...
  • 看到Amazing Alex有个关卡下载的功能,浏览器选择要下载的关卡(如下图)以后会自动跳转回这个游戏。   实现这样的功能并不麻烦,通过将网上一些相关教程汇总以后就写了下面的教程分享。 实现效果如下,...
  • Safari下载东西太慢怎么办?

    千次阅读 2020-06-23 22:10:44
    这都是下载的那个页面打开的,显示如下: 我们需要找到下载的链接,这里我直接搜索Catalina,因为这个后面就是MacTex.pkg下载按钮,这样我们找到了下载的链接: 复制这个链接,打开迅雷,下载就好了。4天...
  • 1、苹果用户打开后要么自动调起App Store下载(前提是你的应用苹果商店上架了);要么是去Safari下载。 2、安卓用户打开链接后要么直接下载,要么前往手机默认浏览器下载。 以上是最好的实现方式,该实现方式...
  • 1、苹果用户打开后要么自动调起App Store下载(前提是你的应用苹果商店上架了);要么是去Safari下载。 2、安卓用户打开链接后要么直接下载,要么前往手机默认浏览器下载。 以上是最好的实现方式,该实现方式可以...
  • 6.这是在safari的菜单栏点击开发 7.点击用户代理 8.点击Microsoft edge 这时候页面会刷新一下 再点击下载 就可以直接用网页下载了 而不会因文件过大提示下载客户端 如果觉得网页下载太慢 就点击下载任务 右击复制...
  • 1、点击【Safari 浏览器】-&gt;【偏好设置...】2、【通用】页签关闭【下载打开"安全的"文件】
  • 用户点击打开App或者下载按钮(这个按钮可能一个下载入口页、各种分享页面的吸顶或吸底的banner),如果用户已经安装了App,则根据业务跳转到相应的Native页面;如果用户没有安装该应用,则跳到AppStore或者应用...
  • 微信中下载app共有两种实现方式,然而安卓手机跟苹果手机还尽然不同。 苹果用户打开后要么自动调起App Store下载(前提是你的应用苹果商店上架了);要么是去Safari下载。 安卓用户打开链接后要么直接下载,...
  • safari内置浏览器 安装虚拟机 https://www.jianshu.com/p/941... 安装虚拟机太占用内存了,对只是使用IE浏览器来说也太浪费时间。从网上找了一个教程觉得挺好的(侵权请告知) 安装winebottler软件 1、下载...
  • 本篇文章的目的就是要达成未安装的app在安装app之后,去获取安装app之前Safari所浏览的数据,比如说用户在未安装手机百度时,已经在Safari浏览器登录了百度帐号,当安装手机百度之后,打开该APP可以自动登录这个...
  • 1、苹果用户打开后要么自动调起App Store下载(前提是你的应用苹果商店上架了);要么是去Safari下载。 2、安卓用户打开链接后要么直接下载,要么前往手机默认浏览器下载。 以上是最好的实现方式,该实现方式可以...
  • Safari-IoS调试

    2018-04-13 16:21:00
    在模拟器的页面,在Safari浏览器-开发模式-Serinator选择打开的页面,即可调试。 -------- 对于未在appStore没有的应用下载,安装。会不被识别。需要设置信任才可以。 设置-》 通用-》 设备管理 -》查找...
  • 2021年以前版本的safari可以参考文章install-any-safari-extension-macos-mojave对json view的插件包进行重新编译后在安装在safari扩展. 下面我要说的是2021年及以后safari版本的json格式化插件安装 在safair...
  • 其次再说一下为什么微信内置浏览器不提示前往Safari打开,这是因为缺少了一个微信跳转外部浏览器的接口,如果我们代码加入该接口,那么就可以实现ios系统提示前往Safari打开下载页,安卓系统...
  • 1、苹果用户打开后要么自动调起App Store下载(前提是你的应用苹果商店上架了);要么是去Safari下载。 2、安卓用户打开链接后要么直接下载,要么前往手机默认浏览器下载。 以上是最好的实现方式,该实现方式可以...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 489
精华内容 195
关键字:

在safari中打开下载