Rumah >pembangunan bahagian belakang >C++ >Bagaimana cara menyuntik JavaScript ke dalam dokumen HTML untuk mengelakkan `notSupportedException`?

Bagaimana cara menyuntik JavaScript ke dalam dokumen HTML untuk mengelakkan `notSupportedException`?

DDD
DDDasal
2025-01-26 21:21:09357semak imbas

How to Correctly Inject JavaScript into an HTML Document to Avoid `NotSupportedException`?

Kaedah suntikan javascript dalam dokumen HTML

Dengan menyuntik kod JavaScript dalam laman web, unsur -unsur dinamik boleh digunakan untuk meningkatkan fungsi halaman web. Walau bagaimanapun, kaedah htmldocument standard mungkin mengalami kesilapan. Panduan ini memberikan penyelesaian kepada masalah ini.

Masalahnya terletak

sampel kod berikut menunjukkan percubaan untuk menyuntik JavaScript ke dalam dokumen:

Walau bagaimanapun, atribut innerHTML mengakses Scriptel akan membuang pengecualian yang tidak disokong. Ini menunjukkan bahawa jenis HTMLement tidak menyokong HTML dalaman untuk elemen skrip.

<code>string newScript = textBox1.Text;
HtmlElement head = browserCtrl.Document.GetElementsByTagName("head")[0];
HtmlElement scriptEl = browserCtrl.Document.CreateElement("script");
lblStatus.Text = scriptEl.GetType().ToString();
scriptEl.SetAttribute("type", "text/javascript");
head.AppendChild(scriptEl);
scriptEl.InnerHtml = "function sayHello() { alert('hello') }";</code>
penyelesaian

Untuk menyelesaikan masalah ini, kita perlu mengakses antara muka IHTMLScriptElement yang mendasari. Serpihan kod terkini berikut menunjukkan kaedah ini:

Penjelasan

<code>HtmlElement head = webBrowser1.Document.GetElementsByTagName("head")[0];
HtmlElement scriptEl = webBrowser1.Document.CreateElement("script");
IHTMLScriptElement element = (IHTMLScriptElement)scriptEl.DomElement;
element.text = "function sayHello() { alert('hello') }";
head.AppendChild(scriptEl);
webBrowser1.Document.InvokeScript("sayHello");</code>

Dapatkan elemen kepala dokumen. Buat elemen skrip baru.

    Ambil antara muka IhtmlScriptelement yang mendasari dari atribut Domelement elemen skrip.
  1. Tetapkan harta teks elemen skrip dengan kod JavaScript.
  2. Lampirkan elemen skrip ke kepala dokumen.
  3. Fungsi JavaScript dilakukan dari antara muka IHTMLScriptElement untuk mengaktifkan skrip yang disuntik.
  4. Kaedah ini membolehkan anda berjaya menyuntik JavaScript ke dalam laman web dan secara dinamik berinteraksi dengan elemennya.

Atas ialah kandungan terperinci Bagaimana cara menyuntik JavaScript ke dalam dokumen HTML untuk mengelakkan `notSupportedException`?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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