DHTML:QueueJavascript

  DHTML:QueueJavascript( string js )

Açıklama

Bir panelde, bir metin dizesini JavaScript kodu olarak çalıştırır/yürütür.

Bu fonksiyon ifadeleri değerlendirmez (yani JavaScript (JS) ortamından Lua ortamına değişken aktarmanıza izin vermez).
Çünkü geri dönüş değeri nil/yok (diğer bir deyişle void) olacaktır.
Eğer JS'den Lua'ya değer aktarmak/döndürmek isterseniz, bu işi başarmak için DHTML:AddFunction fonksiyonunu kullanabilirsiniz.
Eğer Panel:IsVisible `false` ise, PANEL:Think çalışmaz, bu da Javascript Kuyruğunun işlenmeyeceği anlamına gelir.

Bunun yerine panelin çizimini durdurmak için PANEL:Paint fonksiyonunu geçersiz kılmayı (override) düşünün.

Argümanlar

1 string js
Çalıştırılacak JavaScript kodunu belirtin.

Örnek

Bu fonksiyonu bir panel üzerinde çağırarak document.body.innerHTML özelliğinin nasıl değiştirileceğini gösterir.

-- Öncelikle bir konteyner oluşturuyoruz, bu örnekte tam ekran bir Derma Frame penceresi. local dframe = vgui.Create( 'DFrame' ) dframe:SetSize( ScrW(), ScrH() ) dframe:SetTitle( "Garry's Mod Wiki" ) dframe:Center() dframe:MakePopup() -- DFrame paneli için klavye ve fare etkileşimini etkinleştir. -- dframe'in bir alt öğesi olarak yeni bir DHTML paneli oluşturun ve onu dock-fill ile doldurun. local dhtml = vgui.Create( 'DHTML', dframe ) dhtml:Dock( FILL ) -- Garry's Mod wiki web sitesine gidin. dhtml:OpenURL( 'https://wiki.garrysmod.com/index.php' ) -- JavaScript kodunu çalıştırın. dhtml:QueueJavascript( "document.body.innerHTML = 'HTML changed from Lua using JavaScript!';" ) -- Bu bir hata/istisna fırlatmaz, bunun yerine nil/yok değeri döndürür. -- Bu, bu fonksiyonu kullanarak JavaScript'ten Lua ortamına değer aktaramayacağınız/döndüremeyeceğiniz anlamına gelir. local number = dhtml:QueueJavascript( '22;' ) print( number )
Çıktı: DHTML panelindeki belgenin gövdesinin iç HTML'i şimdi "HTML changed from Lua using JavaScript!" olarak ayarlandı.

Tüm sunucular · GmodTR Launcher · Rehber · GMod Wiki · GmodTR nedir? · Sunucu ekle · Discord