在webview商店应用程序中调用Javascript

本文关键字:调用 Javascript 应用程序 webview | 更新日期: 2023-09-27 18:29:13

我正在使用C#&XAML,在我的Web视图中,我正在加载本地HTML文件,之后,我尝试使用JavaScript对HTML进行水平滚动。

在此之前,我正在尝试将HTML高度调整为Windows高度。,这对我来说没什么事

我的代码:

    protected async override void OnNavigatedTo(NavigationEventArgs e)
    {
      StorageFile file = await ApplicationData.Current.LocalFolder.GetFileAsync("split.html");
      string Filecontent = await FileIO.ReadTextAsync(file);
      webView.NavigateToString(Filecontent);
    }
    private async void webView_LoadCompleted(object sender, NavigationEventArgs e)
    {
        StorageFolder folder = Package.Current.InstalledLocation;
        StorageFile file = await folder.GetFileAsync("JavaScript.js");
        string js = await FileIO.ReadTextAsync(file);
        webVIew.InvokeScript("eval", new[] { js });
    }

JavaScript代码:

var h = window.innerHeight, w = window.innerWidth; window.resizeBy(w, h);

我不认为这是一个更好的解决方案,但我想知道,如果有人对此有任何建议,这是有用的。谢谢

在webview商店应用程序中调用Javascript

我已经完成了这项工作,我正在做两件不同的事情:

首先,在HTML中包含javascript,可能在head标签中:

<script type="text/javascript" src="JavaScript.js"/>

其次,您不需要调用"eval"。你可以直接调用一个JavaScript函数,如果你愿意的话,包括多个参数:

string result = webview->InvokeScript("myScriptName", new string[]{ parameterString });
string result = webview->InvokeScript("scriptTwo", new string[]{ param1, param2 });