Hirdetés
- OLED TV topic
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Milyen videókártyát?
- Fejhallgató erősítő és DAC topik
- Projektor topic
- Xiaomi Pad 6 - kiapadhatatlan jóság
- Augusztusi hardverszuflé
- Milyen notebookot vegyek?
- Amlogic S905, S912 processzoros készülékek
- AMD Ryzen 9 / 7 / 5 / 3 5***(X) "Zen 3" (AM4)
Hirdetés
Talpon vagyunk, köszönjük a sok biztatást! Ha segíteni szeretnél, boldogan ajánljuk Előfizetéseinket!
-
PROHARDVER!
JavaScript != Java (A JavaScript nem összekeverendő a Javával, két különböző programozási nyelvről van szó!)
Új hozzászólás Aktív témák
-
Keem1
veterán
Srácok, a jQuery topik nem igazán aktív, így kicsit offként, de ide írom a problémámat.
Adott ez a kódrészlet:
$(document).ready(function()
{
$(".iconlamp").click(function()
{
if ($(this).data("deviceid") != null)
{
$.getJSON(hubaddress+"/smarthomeapi/toggle/"+$(this).data("deviceid"), function (responsejson)
{
$("#status").text(responsejson.displayname + (responsejson.state != true ? " kikapcsolva" : " bekapcsolva"));
});
}
});
});Ez pedig a related HTML:
<h1>Smart Home</h1>
<div class="devices">
<div><span class="icon iconlamp" data-deviceid="vfNVnFFZX9XrAgQF"></span>Spotlight<small>SonOff</small></div>
<div><span class="icon iconlamp" data-deviceid="twYSpcyO4Z2Dt9vX"></span>Desk Lamp<small>Xiaomi</small></div>
<div><span class="icon iconboiler" data-deviceid="KSnlcaoerJkPv8xw"></span>Bojler<small>SonOff</small></div>
</div>
<div id="status"></div>Ez gyakorlatilag egy Sonoff mögötti lámpát kapcsolgat, frankón. Viszont, az API egy JSON-t ad vissza, amiben többek között benne van, hogy fel- vagy lekapcsolt állapotú-e a lámpa, ezt a GUI-n lévő ikonra is rávezetném (lekapcsolt, felkapcsolt lámpa ikon, pure css). De a $.getJSON alatt sehogysem tudom elérni a parent objektumokat, nekem igazából az AJAX fölötti, if-ben lévő $(this) kellene, de a xy.parent() se vezet eredményre, az xy.parent().parent() se működik, ezt halmozhatom akármeddig, az ajax objektumba beszorul az egész, följebb nem tudok menni.
Tehát összefoglalva... Van pár div-em (jelenleg 3 db), amikben egy-egy lámpa ikon (inline-block span) a backgroundja. A span (majd később pedig a parent div, de ez most mellékes) elemre kattintva ki/bekapcsolom a lámpát (toggle API), amire visszajön egy JSON, benne az aktuális státusz (responsejson.state = true/false). Eddig minden fasza. Viszont a true/false alapján, az adott span-nek kéne a class listáját módosítani [addClass() / removeClass()], de nincs mit, mert a span objektumra nem tudok hogy hivatkozni. a $(this).parent() nem működik, folyamatosan a getJSON objektumot kapom vissza.
Hogy tudnám ezt a problémát áthidalni?
Új hozzászólás Aktív témák
- Kerékpárosok, bringások ide!
- Hat év támogatást csomagolt fém házba a OnePlus Nord 4
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- OLED TV topic
- Formula-1
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Windows 11
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
- iPhone topik
- Milyen videókártyát?
- További aktív témák...
- Canon EOS 250D gépek, objektívekkel, kiegészítőkkel. (200 vagy 970 expoval)
- DJI FPV Fly More Combo drón szett +Motion Controller
- Hama uRage CyberBoard billentyüzet+HAMA Urage gaming egér
- 6gen i3 pc i3-6100/8gb ddr4/120 gb SSD GTX 960-2 gb DDR5
- Canon EOS 200D gépek, objektívekkel, kiegészítőkkel. ( 777 vagy 3800 expoval)
- HP 200W (19.5V 10.3A) kis kék, kerek, 4.5x3.0mm töltők + tápkábel, 928429-002
- Kodak PD460 Instant Dock Printer / Számla és Garancia
- Telefon felvásárlás!! Honor 400 Lite, Honor 400, Honor 400 Pro
- AKCIÓ! Apple MacBook Pro 13 2022 M2 8GB 256GB SSD garanciával hibátlan működéssel
- LG 27UL500-W - 27" IPS - 3840x2160 4K - 60Hz 5ms - HDR10 - AMD FreeSync - 300 Nits - sRGB 99%
Állásajánlatok
Cég: FOTC
Város: Budapest