Hirdetés
- Új Intel CPU-kkal jön a Surface Pro 12 és a Surface Laptop 8 for Business
- Nem kell még temetni: 2 éves órajelcsúcsot döntöttek meg Raptor Lake-kel
- HiFi műszaki szemmel - sztereó hangrendszerek
- Házimozi belépő szinten
- Apple MacBook
- Milyen egeret válasszak?
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Gaming notebook topik
- Nem kéri tovább a nekik fejlesztett csúcs-GeForce-ot Kína?
- Fejhallgató erősítő és DAC topik
-
Fórumok
PROHARDVER! - hardver fórumok
Notebookok TV & Audió Digitális fényképezés Alaplapok, chipsetek, memóriák Processzorok, tuning Hűtés, házak, tápok, modding Videokártyák Monitorok Adattárolás Multimédia, életmód, 3D nyomtatás Nyomtatók, szkennerek Tabletek, E-bookok PC, mini PC, barebone, szerver Beviteli eszközök Egyéb hardverek PROHARDVER! BlogokMobilarena - mobil fórumok
Okostelefonok Mobiltelefonok Okosórák Autó+mobil Üzlet és Szolgáltatások Mobilalkalmazások Tartozékok, egyebek Mobilarena blogokIT café - infotech fórumok
Infotech Hálózat, szolgáltatók OS, alkalmazások SzoftverfejlesztésGAMEPOD - játék fórumok
PC játékok Konzol játékok MobiljátékokLOGOUT - lépj ki, lépj be!
LOGOUT reakciók Monologoszféra FototrendFÁRADT GŐZ - közösségi tér szinte bármiről
Tudomány, oktatás Sport, életmód, utazás, egészség Kultúra, művészet, média Gazdaság, jog Technika, hobbi, otthon Társadalom, közélet Egyéb Lokál PROHARDVER! interaktív
-
Frissítve: 2014-02-25 10:20 Téma összefoglaló
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
-
Sk8erPeter
nagyúr
Sziasztok!
Megtudjátok mondani mi a hiba?<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Időkép demo</title>
<style type="text/css">
.element {
float: left;
}
.element div {
text-align: center;
}
</style>
</head>
<body>
<div id="container"></div><div>
<script>
var i;
var napok = ["H", "K", "Sz", "Cs, P"];
var fokok = [2 3, 8, 5, -6];for(i = 0; i < napok.length; i++) {
document.write("<div>" + napok + "</div>");
document.write("<div>" + fokok(i) + "</div>");
if(fokok(i) < 5) {
document.write(<img src='https://cdn0.iconfinder.com/data/icons/good-weather-1/96/weather_icons-68-128.png'>);
} else {
document.write(<img src='https://cdn0.iconfinder.com/data/icons/good-weather-1/96/weather_icons-68-128.png'>);
}
}
</script>
</div></body>
</html>Több hiba is van benne. Egyrészt az a nagy hiba, hogy nem raktad fel nekünk jsFiddle-re, hogy egyből tesztelni tudjuk, másrészt nem használtad a kód kijelölése után itt a fórumon a Programkód gombot, hogy normálisan nézzen ki.

Aztán:
1.
var napok = ["H", "K", "Sz", "Cs, P"];
ez ez akart lenni:
var napok = ["H", "K", "Sz", "Cs", "P"];
(külön a "Cs", "P" stringek)2.
document.write("<div>" + napok + "</div>");
Ennek semmi értelme, mert a napok egy tömb, míg te a tömb cikluson belüli aktuális elemére vagy kíváncsi, ami a napok[i], vagyis az előzőnek a ciklusváltozóval indexelt formája.
Ezenkívül document.write()-ot nem használunk a gyakorlatban. SOHA. Még ha a tanár azt is mondja, akkor sem.
Ha a tanár azt mondja, akkor le van maradva. Bár már akkor sem volt értelme, amikor divatos volt használni.3.
fokok(i)
itt már láthatóan indexelni akartál, csak nem jött össze. Indexelésre a szögletes zárójelet használjuk, tehát így: fokok[i].4.
document.write(<img src='https://cdn0.iconfinder.com/data/icons/good-weather-1/96/weather_icons-68-128.png'>);
Itt az <img ...> részt úgy kezded el, hogy elfelejtetted stringként átadni. Tehát ez így nem lesz jó.
Így jó lenne:
document.write("<img src='https://cdn0.iconfinder.com/data/icons/good-weather-1/96/weather_icons-68-128.png'>");
A feltétel másik részénél ugyanez.Itt láthatsz egy működő változatot:
http://jsfiddle.net/5hvwzquf/=====================================
(#5776) Agostino:
Akkor jó.
-
DNReNTi
őstag
Ha ezzel hosszabb távon tervezel foglalkozni, szerintem hamarabb megtanulsz angolul, minthogy találj egy "teljes JS-t" átfogó tutorialt magyarul.
A professzionális : MDN
A barátságos : [W3S] (minnyán jön Brian és kioszt egy fülest
)De ha lenyitottad volna a topik összefoglalót, az MDN-t már ismernéd, illetve egy halom másik ajánlott olvasmány is szerepel benne. Persze angolul.
Szerk:
(#5735) Zedz
Ettől sokkal jobb: [link]![;]](//cdn.rios.hu/dl/s/v1.gif)
-
Zedz
addikt
-
Cathfaern
nagyúr
"Sajnos nagyon szegényesen tanították anno nekem a JS-t. Már magát a javát is."
Csak hogy tisztázzuk: a Javascriptnek az ég világon semmi köze a javához. Akartam írni, hogy bele is kéne írni ezt az összefoglalóba is, aztán most nézem ott virít a topic tetején
-
Sk8erPeter
nagyúr
Én ide írtam
for (var i = 0; i < napokHomerseklete.length; i++)
{
document.write(napokHomerseklete+" "); <==========
}
{
if (napokHomerseklete <= 5) {
idojarasClass = 'hideg';
} else {
idojarasClass = 'meleg';
}
currentElement = document.getElementsByTagName("td")(i);
currentElement.classList.add(idojarasClass);
}}
document.write()-ot értelmes ember nem használ.
![;]](//cdn.rios.hu/dl/s/v1.gif)
(#5714) Speeedfire:
Ilyenekre amúgy ott lenne a jsbin.com, ahova teljes kód felpakolható, ahonnan aztán lehet kopipasztázni, de most épp fogalmam sincs, miért nem üzemel egyáltalán.
-
Speeedfire
félisten
-
Speeedfire
félisten
-
fordfairlane
veterán
Mondjuk ha valami ősrégi anyag alapján megy a js tanítás, akkor esetleg lehet az egész ciklus helyére tenni valami document.write -ot. A document.write-ba a teljes html-t bele kell pakolni. Valami ilyesmire gondolok, nem kidolgozva, csak hevenyészett pszeudokód szinten:
<div>
<script>
var i;
var napok = ["H", "K", "Sz", "Cs"];
var fokok = [2 3, 8, 5];
for(i = 0; i < napok.length; i++) {
document.write("<div>" + napok[i] + "</div>");
document.write("<div>" + fokok[i] + "</div>");
if(fokok[i] < 5) {
document.write("<img src='hideg.jpg'>");
} else {
document.write("<img src='meleg.jpg'>");
}
}
</script>
</div>Ez épp eléggé elavult módszer ahhoz, hogy megfeleljen az oktatási rendszer színvonalának.
-
fordfairlane
veterán
Csak aztán nehogy az legyen a probléma, hogy olyan technika van benne, amit nem tanultatok, és emiatt esetleg gyanús lesz. Igyekeztem a lehető legáltalánosabb DOM metódusokat használni.
-
fordfairlane
veterán
-
fordfairlane
veterán
Én ide írtam
for (var i = 0; i < napokHomerseklete.length; i++)
{
document.write(napokHomerseklete+" "); <==========
}
{
if (napokHomerseklete <= 5) {
idojarasClass = 'hideg';
} else {
idojarasClass = 'meleg';
}
currentElement = document.getElementsByTagName("td")(i);
currentElement.classList.add(idojarasClass);
}}
-
trisztan94
őstag
Én ide írtam
for (var i = 0; i < napokHomerseklete.length; i++)
{
document.write(napokHomerseklete+" "); <==========
}
{
if (napokHomerseklete <= 5) {
idojarasClass = 'hideg';
} else {
idojarasClass = 'meleg';
}
currentElement = document.getElementsByTagName("td")(i);
currentElement.classList.add(idojarasClass);
}}
Hát az ott nem jó. Meg az utána következő 2 sor sem. Meg az utolsó sem.
Ne várd már el, hogy miután többen megcsináltuk az egész feladatot helyetted (külön kiemelve Speeedfire-t, aki egyszer módosította neked, illetve még Pastebin-re is felrakta az egészet HTML-ben) még bővítgessük/javítgassuk. Ez mind alap Javascript, triviális szintaktikai hibákkal.
Olvass utána, nézz 2-3 tutorialt, stb. Kb 2 óra alatt rájönnél magadtól, hogy mit rontottál el.
-
trisztan94
őstag
"...a html és css megy"
Azt nehezem tudom elképzelni annak tükrében, hogy nem tudtad hova rakd a stílusokat és a scripteket.

"Hogyan tudom kiiratni a fokokat a képek alá?"
Tétrehozol egy új sort és annak a megfelelő cellájába írod. Ha megy a HTML, mennie kell.
document.write(napokHomerseklete+" ");
A napokHomerseklete egy tömb. Ha simán kiírod így, az egész tömböt írja ki, nem az adott nap hőmérsékletét. Az i-edik (ciklus indexe, mely megfelel a tömb indexeinek) napnak akarod a hőmérsékletét.
Ezt a cikluson belülre kell, hogy a megfelelő naphoz rakja be. -
Speeedfire
félisten
-
trisztan94
őstag
index.html-be HTML kód megy, doctype deklarálással kezdve, <html>, <head> és <body> tag-ekkel.
Ide linkeled be a Javascript (.js) és CSS (.css) fájlokat is.Css fájlba értelem szerűen a CSS kód megy, míg a Javascript fájlba a JS.
(#5714) Speeedfire
You da real MVP

-
DNReNTi
őstag
-
Speeedfire
félisten
-
martonx
veterán
-
trisztan94
őstag
Arra figyelj, hogy jQuery-t is rakott bele a kolléga, így ha vanilla JS-ben kell megcsinálni a feladatot, nem feltétlen fogják így elfogadni.
Gondolom sulis beadandó ebben a remek oktatási rendszerben?
-
Speeedfire
félisten
Igen.

//az adott i-edik td elemhez hozzá adok egy css osztályt hideg/meleg
$("td:eq(" + i + ")").addClass(idojarasClass);//ez a 2 sor csak logolás debug miatt
console.log(i);
console.log(idojarasClass); -
Speeedfire
félisten
-
trisztan94
őstag
"alert helyére képet szeretnék tenni, ha hideg ,akkor ilyen kép ha meleg akkor olyan."
Nagyon nagyon parasztul így lehet megcsinálni a kép kirakást csak javascripttel (+ egy kep id-jű div-el).
document.getElementById("kep").innerHTML('<img src="hideg.jpg" alt="Hideg idő kép"/>');
Értelem szerűen a meleg ágba pedig a meleg.jpg-t kell rakni.
-
Zedz
addikt
A szakma nyelve az angol, ha ezzel szeretnél foglalkozni, akkor szerintem kezdj el angolozni.
A megoldásod pedig nem jó:
if (napokHomerseklete <= 5) { ... }Honnan fogja tudni, hogy éppen melyik nap hőmérsékletét vizsgálja meg? Valami lemaradt.
(#5697) libamajas: "alert helyére képet szeretnék tenni, ha hideg ,akkor ilyen kép ha meleg akkor olyan."
Szerintem Google barátunk egy ügyes kereséssel 5 perc alatt kidobja a neked megfelelő választ. Esetleg még ide is ellátogathatsz.

-
Speeedfire
félisten
-
trisztan94
őstag
Lehet én vagyok fáradt, de még mindig nem értem mit akarsz a var = 0-val.
A var javascriptben változót jelöl.
Így használjuk: var változóneve = változóértékfor ciklusnak pedig ez a szintaktikája:
for (var i = 0; i < 10; i++)
Ami azt jelenti, hogy előteszteléses ciklust indítasz egy helyi scope-ban értelmezett i változóval, melynek kezdőértéke 0, és minden ciklusban növekszik egyel amíg a feltétel igaz (tehát hogy kisebb, mint 10)
A var = 0 nem jelent semmit, hibát fog dobni.
-
trisztan94
őstag
-
trisztan94
őstag
Sziasztok.
Programot kell írnom, ami Hétfőtől Péntekig kidobja a Celsius fokot és eldönteni hogy hideg van-e meleg van-e, mellé meg kitesz egy képet pl: ha hideg van akkor egy téli képet kitesz, ha mondjuk meleg van akkor értelem szerűen napos képet.
Hogy lássak hozzá?
Köszönöm előre is!

var napokHomerseklete = [
10, -20, 5, 8, 12
];
for (var i = 0; i < napokHomerseklete.length; i++) {
if(napokHomerseklete[i] <= 5) {
alert("hideg");
} else {
alert("meleg");
}
}Valahogy így. Az alertek helyére pedig berakod a logikát ami kiírja a megfelelő helyre a megfelelő infót.
Új hozzászólás Aktív témák
-
Fórumok
PROHARDVER! - hardver fórumok
Notebookok TV & Audió Digitális fényképezés Alaplapok, chipsetek, memóriák Processzorok, tuning Hűtés, házak, tápok, modding Videokártyák Monitorok Adattárolás Multimédia, életmód, 3D nyomtatás Nyomtatók, szkennerek Tabletek, E-bookok PC, mini PC, barebone, szerver Beviteli eszközök Egyéb hardverek PROHARDVER! BlogokMobilarena - mobil fórumok
Okostelefonok Mobiltelefonok Okosórák Autó+mobil Üzlet és Szolgáltatások Mobilalkalmazások Tartozékok, egyebek Mobilarena blogokIT café - infotech fórumok
Infotech Hálózat, szolgáltatók OS, alkalmazások SzoftverfejlesztésGAMEPOD - játék fórumok
PC játékok Konzol játékok MobiljátékokLOGOUT - lépj ki, lépj be!
LOGOUT reakciók Monologoszféra FototrendFÁRADT GŐZ - közösségi tér szinte bármiről
Tudomány, oktatás Sport, életmód, utazás, egészség Kultúra, művészet, média Gazdaság, jog Technika, hobbi, otthon Társadalom, közélet Egyéb Lokál PROHARDVER! interaktív
- Okos otthon - Home Assistant, openHAB és más nyílt rendszerek
- Új Intel CPU-kkal jön a Surface Pro 12 és a Surface Laptop 8 for Business
- Digitális Állampolgárság Program DÁP
- Mibe tegyem a megtakarításaimat?
- Nem kell még temetni: 2 éves órajelcsúcsot döntöttek meg Raptor Lake-kel
- Asustor NAS
- Yettel topik
- Mesterséges intelligencia topik
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- Villanyszerelés
- További aktív témák...
- Legújabb Thinkpad T14 gen6 - Bontatlan + magyar! - Core Ultra 7 255U - 16/32GB - 512GB - Gyártói gar
- Fujitsu 27" B27-9 TE Full HD 1920x1080 hófehér monitor - több db - gari számla - állítható magasság
- Kingston HyperX és FURY 16Gb (20-22k) és 32GB DDR4 (47k) laptop ramok párban is 2666Mhz/3200Mhz
- Lenovo Thinkpad T14s gen 6 - Teljesen új - Ryzen AI 7 PRO 350 - 32GB - 512GB - 2028 októberig gari!
- új, de karcos Lenovo ThinkCentre Neo 50t // Core i7 12700 // 16GB DDR4// 512GB
- Apple iPhone SE 2020 128GB, Kártyafüggetlen, 1 Év Garanciával
- Lenovo Thinkpad L580,15.6",FHD,i5-8350U,8GB DDR4,256GB NVMe SSD,WIN11
- Gamer PC-Számítógép! Csere-Beszámítás! I5 7600K / GTX 1070 8GB / 16GB DDR4 / 256 SSD + 1TB HDD
- Samsung Galaxy S24 / 8/128GB / Kártyafüggetlen / 12Hó Garancia
- Huawei P30 Pro 128GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

Ha a tanár azt mondja, akkor le van maradva. Bár már akkor sem volt értelme, amikor divatos volt használni.
)







