2013-08-27 27 views
1

我正在使用C的Windows商店應用程序工作#& XAML,在我的webview我加載本地HTML文件, 之後,我正在嘗試使用JavaScript進行水平Scrooling HTML。在webview商店應用程序中調用Javascript

在此之前,我試圖將HTML高度調整到Windows高度。這是什麼happing對我來說,

我的代碼:

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); 

我不這麼認爲這是一個更好的解決方案,但我想知道這一點,如果任何人對此有任何建議,這很有用。 謝謝。

+1

這聽起來像你在做非常錯誤(tm)。不要混用這樣的開發模式,你未來的同事會恨你。使用XAML或使用HTML。不是都。 – mattmanser

+0

@mattmanser 我想澄清一些東西 – Kumar

+0

@mattmanser我使用XAML進行APP設計,我不得不使用C#進行JavaScript水平導航。 HTML文件是我的項目中的一部分。 如果有任何問題,請嘗試問我。 – Kumar

回答

0

我有這個工作,我做不同的兩件事情:

首先,包括HTML中的JavaScript,可能是頭標記中:

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

其次,你不」 t需要調用「eval」。你可以直接調用一個JavaScript函數,包括多個參數,如果你願意的話:

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

現在...我不在這個應用程序工作&仍然我沒有解決這個問題。我會嘗試你的建議並讓你知道。謝謝... – Kumar

相關問題