Hallo,
ich bräuchte nochmal eure Hilfe. Und zwar habe ich mir eine HTML Datei geschrieben, welche auch JS nutzt. Diese möchte ich dann durch den Webbrowser öffnen. Dann kommt allerdings der Fehler, dass Scripte nicht geladen werden konnten. Durch etwas recherche habe ich herausgefunden, dass man separate Scripte wohl manuell ausführen muss. Da komme ich allerdings nicht ganz weiter.
Versucht habe ich das ganze mit diesem Link:
dotnet-snippets.de/snippet/jav…r-control-ausfuehren/2764
Meine HTML sieht so aus:
Und im Code habe ich dann folgendes eingegeben:
Allerdings weiß ich ab dann nicht mehr, was ich falsch mache. Ich weiß auch nicht, welche Parameter ich dort genau angeben soll...? Bzw. ob der Rest überhaupt so richtig ist.
Die Funktion in der HTML ist immer die gleiche. Wie bekomme ich es also hin diese HTML zu laden? Und ergänzend: Process kommt nicht in Frage, da nicht ständig neue Tabseiten geöffnet werden sollen.
Kann mir da jemand weiter helfen?
*Topic verschoben*
ich bräuchte nochmal eure Hilfe. Und zwar habe ich mir eine HTML Datei geschrieben, welche auch JS nutzt. Diese möchte ich dann durch den Webbrowser öffnen. Dann kommt allerdings der Fehler, dass Scripte nicht geladen werden konnten. Durch etwas recherche habe ich herausgefunden, dass man separate Scripte wohl manuell ausführen muss. Da komme ich allerdings nicht ganz weiter.
Versucht habe ich das ganze mit diesem Link:
dotnet-snippets.de/snippet/jav…r-control-ausfuehren/2764
Meine HTML sieht so aus:
HTML-Quellcode
- <html><head><script src="https://api.mqcdn.com/sdk/mapquest-js/v1.3.2/mapquest.js"></script>
- <link type="text/css" rel="stylesheet" href="https://api.mqcdn.com/sdk/mapquest-js/v1.3.2/mapquest.css"/>
- <script type="text/javascript">
- window.onload = function() {
- L.mapquest.key = 'lYrP4vF3Uk5zgTiGGuEzQGwGIVDGuy24';
- var map = L.mapquest.map('map', {
- center: [51.8977926093725, 8.386069634439036],
- layers: L.mapquest.tileLayer('map'),
- zoom: 12
- });map.addControl(L.mapquest.control());
- }
- </script>
- </head>
- <body style="border: 0; margin: 0;"></body>
- </html>
Und im Code habe ich dann folgendes eingegeben:
VB.NET-Quellcode
- Private Sub karte_Load(sender As Object, e As EventArgs) Handles MyBase.Load
- WebBrowser1.Navigate(Application.StartupPath + "/Test.htm")
- ExecuteJavaScript(WebBrowser1, Application.StartupPath + "/Test.htm", "function", "")
- End Sub
- Public Shared Sub ExecuteJavaScript(ByVal browser As WebBrowser, ByVal Script As String, ByVal FunctionName As String, ByVal Params As Object())
- Dim head As HtmlElement = browser.Document.GetElementsByTagName("head")(0)
- Dim scriptEl As HtmlElement = browser.Document.CreateElement("script")
- Dim element As IHTMLScriptElement = CType(scriptEl.DomElement, IHTMLScriptElement)
- element.text = Script
- head.AppendChild(scriptEl)
- browser.Document.InvokeScript(FunctionName, Params)
- End Sub
Allerdings weiß ich ab dann nicht mehr, was ich falsch mache. Ich weiß auch nicht, welche Parameter ich dort genau angeben soll...? Bzw. ob der Rest überhaupt so richtig ist.
Die Funktion in der HTML ist immer die gleiche. Wie bekomme ich es also hin diese HTML zu laden? Und ergänzend: Process kommt nicht in Frage, da nicht ständig neue Tabseiten geöffnet werden sollen.
Kann mir da jemand weiter helfen?
*Topic verschoben*
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Marcus Gräfe“ ()