zoukankan      html  css  js  c++  java
  • WPF 应用

    1. 前提

    • 原本是在大屏上展示系统,系统有个功能是加载第三方的网站,第三方网站按照大屏的分辨率写死了宽高;
    • 现需要改到小屏展示系统,而这个第三方的网站不能随着 WebBrowser 窗口的尺寸调整网站内容的尺寸。

    2. 解决思路

    1)加载完毕后,调用 InvokeScript 方法执行在当前加载的文档中定义的脚本函数,简单说就是调用网站的 js 方法;
    2)网站未必会定义一个实现相关功能的方法,因此我们可以通过 eval 方法执行 js 代码。

    <Grid x:Name="wb" Margin="10" Background="White">
        <WebBrowser Margin="0" x:Name="wbLeft" Source="about:blank"></WebBrowser>
    </Grid>
    
    wbLeft.Width = wb.ActualWidth;
    wbLeft.Height = wb.ActualHeight;
    string url = string.Empty;
    wbLeft.Navigate(url);
    
    wbLeft.LoadCompleted += (s,e)=>
    {
        wbLeft.InvokeScript("eval", new object[] { "document.body.style.zoom = 0.8;" });
    };
    

    题外话:

    <script type="text/javascript">
    
    eval("x=10;y=20;document.write(x*y)")
    
    document.write(eval("2+2"))
    
    var x=10
    document.write(eval(x+17))
    </script>
    
    输出 
    200
    4
    27
    
  • 相关阅读:
    golang-uuid
    golang-random随机数
    git status检测不到文件变化
    vimium
    go1.11新特性,mark一下
    HTML网页滚动加载--mark一下
    docker-清理none镜像等操作
    golang websocket
    postman 快捷方式--启动图标
    tmux基本操作
  • 原文地址:https://www.cnblogs.com/MichaelLoveSna/p/14486599.html
Copyright © 2011-2022 走看看