1

我想在使用WP7中的網頁瀏覽器控件的網頁中使用JavaScript顯示警示框。警報不會彈出。代碼中是否有任何錯誤或者WP7根本不支持它?無法在WP7網絡瀏覽器控件中通過Javascript顯示警報

<電話:web瀏覽器名稱= 「瀏覽器」 IsScriptEnabled = 「真」 ScriptNotify = 「browser_ScriptNotify」 源= 「default.html中」/>

內default.html中

<html><br> 
<head><br> 
</head><br> 
<body onload="onLoad()"><br> 
    <script type="text/javascript"><br> 
     function onLoad() {<br> 
      alert("hello");<br> 
     }<br> 
    </script><br> 
</body><br> 
</html> 

回答

1

This我是如何解決它,我注入的JavaScript到到我瀏覽的網頁,並overrided警報並確認框

window.alert = function(__msg){window.external.notify(' + __msg + ');};

然後在腳本通知功能使用MessageBox中顯示的信息。我希望它也能幫助別人。以前的答案是一個解決方法,這是我覺得是我的問題的正確解決方案

+0

我認爲回答問題的人很難真正理解他們的解決方案是否是解決方法或正確的。至少對我來說,上面的建議也是解決方法,因爲您正在修改要瀏覽的頁面的內容,以便適合您的應用程序的帳單。不久之後,就不會花時間去理解人們所要求的問題和寫測試解決方案,並且接受這些解決方案(正確),然後再拒絕他們。 – 2012-08-24 07:14:04

+0

我希望你能看到你所做的所有事情都只是將我的示例中的ShowNameAlert別名爲window.alert!我希望你會將我的解決方案的決定還原爲答案:) – 2012-08-24 07:48:11

+0

你的解決方案也是對的,但在這種情況下,我不得不修改我不想要的HTML頁面(那不是我的優先考慮)。通過我在一些研究中發現的這一點,我能夠通過我的.cs代碼將JS添加到html頁面。對於我的問題,這證明是正確的。這就是爲什麼我改變了這個答案。雖然我很欣賞你的答案,作爲此答案的補充。感謝您的幫助:) – 2012-08-24 09:04:29

2

你能夠獲得加載的default.html資源?先看看http://blogs.msdn.com/b/dohollan/archive/2010/08/25/adventures-with-the-windows-phone-7-webbrowser-control.aspx

更新,包括示例代碼如何完成預期的效果:

的HTML:

<html xmlns="http://www.w3.org/1999/xhtml" > 
<head> 
    <title></title> 
    <script type="text/javascript" > 
     function ShowNameAlert(name) { 
      window.external.notify("Hello " + name); 
     } 
    </script> 
</head> 
<body onload="ShowNameAlert('Jojo');"> 
Bla bla 
</body> 
</html> 

的C#代碼隱藏:

private void SomeBrowser_ScriptNotify(object sender, NotifyEventArgs e) 
{ 
    MessageBox.Show(e.Value); 
} 

的XAML:

<phone:WebBrowser x:Name="SomeBrowser" ScriptNotify="SomeBrowser_ScriptNotify" IsScriptEnabled="True" Source="test.html"/> 
+0

頁面正常打開,但警報不來 – 2012-08-08 06:29:21

+0

噢好。我試圖讓警報顯示,但沒有成功。我猜想它可能與視覺構圖有關。這就是window.prompt通常在窗口對象的頂部呈現,但由於它現在嵌入在Silverlight應用程序中,所以有一些政策問題妨礙了這一點。 (作爲一個方面說明,ScriptNotify用於瀏覽器Silverlight通信,因此這不是通知的工作橋樑如果你想要一個示例代碼如何使用ScriptNotify然後我可以在這裏寫) – 2012-08-09 08:29:57

+0

謝謝,但我知道該怎麼做。感謝您的回答,我已經嘗試過了。只是想知道代碼或WP7策略是否有任何問題。無論如何你的答案仍然是對的;) – 2012-08-09 13:39:19

相關問題