Rumah > pembangunan bahagian belakang > C++ > Bagaimana dengan selamat menyuntik JavaScript ke dalam kawalan webbrowser?

Bagaimana dengan selamat menyuntik JavaScript ke dalam kawalan webbrowser?

Barbara Streisand
Lepaskan: 2025-01-26 21:16:13
asal
263 orang telah melayarinya

How to Safely Inject JavaScript into a WebBrowser Control?

Suntikan JavaScript ke dalam kawalan WebBrowser

Menyuntik JavaScript ke dalam kawalan WebBrowser ialah teknik yang berkesan untuk meningkatkan kefungsian halaman web yang dipaparkan dalam kawalan. Walau bagaimanapun, cubaan untuk menetapkan sifat InnerHtml bagi objek HtmlElement boleh mengakibatkan ralat System.NotSupportedException.

Untuk menyuntik JavaScript dengan berkesan, pendekatan berbeza diperlukan. Langkah berikut menggariskan penyelesaian:

  1. Dapatkan elemen kepala halaman web dalam kawalan WebBrowser:
HtmlElement head = webBrowser1.Document.GetElementsByTagName("head")[0];
Salin selepas log masuk
  1. Buat elemen skrip dan nyatakan jenisnya:
HtmlElement scriptEl = webBrowser1.Document.CreateElement("script");
scriptEl.SetAttribute("type", "text/javascript");
Salin selepas log masuk
  1. Dapatkan antara muka IHTMLScriptElement bagi elemen skrip:
IHTMLScriptElement element = (IHTMLScriptElement)scriptEl.DomElement;
Salin selepas log masuk
  1. Tetapkan sifat teks IHTMLScriptElement untuk menentukan kod JavaScript:
element.text = "function sayHello() { alert('hello') }";
Salin selepas log masuk
  1. Tambahkan elemen skrip pada elemen kepala:
head.AppendChild(scriptEl);
Salin selepas log masuk
  1. Panggil fungsi JavaScript daripada kawalan WebBrowser:
webBrowser1.Document.InvokeScript("sayHello");
Salin selepas log masuk

Versi yang disemak ini mengekalkan imej asal dan formatnya sambil menyusun semula teks untuk kejelasan dan aliran yang dipertingkatkan. Coretan kod kekal tidak berubah.

Atas ialah kandungan terperinci Bagaimana dengan selamat menyuntik JavaScript ke dalam kawalan webbrowser?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan