zoukankan      html  css  js  c++  java
  • 【转】Win10/UWP新特性系列—Web

    Internet Explorer

    Internet Explorer 在Windows 10 升级为Edge模式,是一种交互性和兼容性都很强的新型浏览器,该浏览器相比以前的版本更新了超过2000个操作性问题,支持20个新平台特性来促进交互性和兼容性。详情: http://blogs.msdn.com/b/ie/archive/2014/11/11/living-on-the-edge-our-next-step-in-interoperability.aspx

    WebView Edge mode Browsing

    所有Windows 10 系统下的WebView控件使用了相同的浏览器渲染引擎,提供了 统一的html标准。
    

    WebView.UnsupportedUriSchemeIdentified event

    新增的WebView.UnsupportedUriSchemeldentified事件能够让WebView捕获到不受支持的uri地址,让我们开发者提供处理这些不受支持的URI方案。
    
    XAML:
    
    C#:
    
    private void OnUnsupportedUriSchemeIdentified (WebView sender, WebViewUnsupportedUriSchemeIdentifiedEventArgs e) 
    { 
    		// Block all URIs from invoking other apps except the mailto: protocol. 
    		if (e.Uri.Scheme != "mailto") 
    		{ 
        		e.Handled= true; 
    		} 
    } 
    

    WebView.NewWindowsRequested event

    WebView.NewWindowsRequested事件能在WebView捕获脚本请求一个新的浏览器窗口动作。默认情况下当用户点击一个href或者按钮调用Windows.Open时,会启动默认浏览器来打开请求的导航,现在开发者可以自己捕获该动作,自行处理业务逻辑。
    
    例子中,捕获该事件后创建一个新的WebView控件来显示所请求的内容:
    
    XAML:
    
    C#:
    

    private void OnNewWindowRequested (WebView sender, WebViewNewWindowRequestedEventArgs e)
    {
    if (e.Referrer.Host == "www.xxxxxx.com")
    {
    var newWebView = new WebView();
    newWebView.Navigate(e.Uri);
    myGrid.Children.Add(newWebView);
    e.Handled = true;
    }
    }

    WebView.PermissionRequested event

    WebView支持最新的Html5技术,有些Html5 Api的调用是需要用户授权的,比如获取地理位置Api,而WebView.PermissionRequested事件能捕捉要求用户许可授权的动作。
    

    WebView.UnviewableContentIdentified event

    WebView.UnviewableContentIdentified 事件可以捕获到WebView尝试下载不受支持的文件时发生,当捕捉到该事件后你可以自行处理此事件 并使用Launcher类将文件重定向到浏览器或者其他应用程序。
    
    例子:
    
    C#:
    

    void webView1_UnviewableContentIdentified(WebView sender,
    WebViewUnviewableContentIdentifiedEventArgs args)
    {
    appendLog(String.Format("Content for "{0}" cannot be loaded into webview. " +
    "Invoking the default launcher instead. ", args.Uri.ToString()));

    // We turn around and hand the Uri to the 
    // system launcher to launch the default handler for it.
    Windows.Foundation.IAsyncOperation<bool> b = 
        Windows.System.Launcher.LaunchUriAsync(args.Uri);
    pageIsLoading = false;
    

    }

    WebView.AddWebAllowedObject method

    该方法可以在WebView中添加一个Windows RunTime对象到html Document对象中。该对象必须集成IAgileObject接口并附加AllowForWeb特性。
    
    例子:
    
    C#:
    

    private void navigationStarting(WebView sender, WebViewNavigationStartingEventArgs args)
    {
    if (args.Uri.Host == "www.contoso.com")
    {
    myWebView.AddWebAllowedObject("name", new MyClass());
    }
    }

    WebView.ClearTemporaryWebDataAync method

    该方法能清除WebView中保存的用户会话状态和缓存数据,来防止另一个用户访问到以前的数据。例如,当用户注销登录时,你可以使用该方法清理WebView控件该用户会话的任何信息。 
    

    来自:http://www.wangchenran.com/uwp新技术-web.html

  • 相关阅读:
    30个实例详解TOP命令
    CentOS6 启动流程图文解剖
    Linux常用性能检测命令解释
    Linux 多核下绑定硬件中断到不同 CPU(IRQ Affinity) 转
    linux系统中如何查看日志 (常用命令2)
    Linux下常用的shell命令记录1
    python import as from
    内存的大小端模式
    opencv笔记1
    代码不仅仅考虑性能
  • 原文地址:https://www.cnblogs.com/wgscd/p/5283820.html
Copyright © 2011-2022 走看看