DHTML:Call

  DHTML:Call( string js )

Açıklama

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

Bu fonksiyon ifadeyi değerlendirmez (yani JavaScript'ten (JS) Lua ortamına değişken aktarmanıza izin vermez).
Çünkü dönüş değeri nil/değersizdir (diğer bir deyişle void).
Eğer JS'den Lua'ya değer aktarmak/döndürmek istiyorsanız, bu işi başarmak için DHTML:AddFunction fonksiyonunu kullanabilirsiniz.
Bu fonksiyon, DHTML:QueueJavascript fonksiyonunun bir takma adıdır (kaynak).

Argümanlar

1 string js
Yürütülecek JavaScript kodunu belirtin.

Örnek

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

-- İlk olarak 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ştirin. -- 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 vikipedi web sitesine gidin. dhtml:OpenURL( 'https://wiki.garrysmod.com/index.php' ) -- JavaScript kodunu çalıştırın. dhtml:Call( [[document.body.innerHTML = 'HTML changed from Lua using JavaScript!';]] ) -- Bu bir hata/istisna fırlatmaz, bunun yerine nil/değersiz bir değer 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:Call( '22;' ) print( number )
Çıktı: DHTML panelindeki belgenin gövdesinin Inner HTML'i artık "HTML changed from Lua using JavaScript!" olarak ayarlandı.

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