在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);
我不认为这是一个更好的解决方案,但我想知道,如果有人对此有任何建议,这是有用的。谢谢
我已经完成了这项工作,我正在做两件不同的事情:
首先,在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 });