[[oktatas:web:javascript|< JavaScript]] ====== JavaScript Megoldások ====== ===== Időzítés ===== ==== Inline ==== ==== Internal ==== ==== Internal több függvénnyel ==== ==== Másként ====

A script on this page starts this clock:

Cím ==== Időzítés törlése ==== ==== Más ==== var idozitoObj = setInterval(function(){idozito()},1000); function idozito() { var jelen = new Date(); var ido = jelen.toLocaleTimeString(); document.getElementById("idoHelye").innerHTML=ido; } Leállítás window.clearInterval(idozitoObj); ===== Osztályváltás ===== Cím
Lorem ipsum
Lorem ipsum
===== Óra ===== ==== Egyszerű óra ==== Cím
Lorem ipsum
Lorem ipsum
Lorem ipsum
Kattints ide
==== Óra leállítása ====
===== Dátum ===== var most = new Date(); var ezt = most.toISOString().substring(0, 10); alert(ezt); A substring helyett használhatjuk a slice() függvényt: var most.toISOString().slice(0,10); var most = new Date(); console.log(most.toLocaleDateString()); console.log(most.toLocaleTimeString()); console.log(most.toLocaleString()); Kimenet: 2021. 04. 08. 22:49:00 2021. 04. 08. 22:49:00 ==== Függvények ==== A Date() objektumon futtatható függvények: * getFullYear() - 4 számjegy * getMonth() - 0-11 * getDate() - 1-31 * getHours() - 0-23 * getMinutes() - 0-59 * getSeconds() - 0-59 * getMilliseconds() - 0-999 ==== Év ==== var most = new Date(); console.log(most.getFullYear()); ==== Hónap ==== var most = new Date(); const honapok = [ 'január', 'február', 'március', 'április', 'május', 'június', 'július', 'augusztus', 'szeptember', 'október', 'november', 'december' ] console.log(honapok[most.getMonth()]); ==== Dátum kiírása ==== var d = new Date(); let ev = new Intl.DateTimeFormat('en', { year: 'numeric' }).format(d); let ho = new Intl.DateTimeFormat('en', { month: '2-digit' }).format(d); let nap = new Intl.DateTimeFormat('en', { day: '2-digit' }).format(d); console.log(`${ev}-${ho}-${nap}`); Kimenet: 2021-04-08 var d = new Date(); let ora = new Intl.DateTimeFormat('hu', { hour: '2-digit' }).format(d); console.log(ora); Kimenet például: 23 Használható kulcsok: ^ Adat ^ Kulcs ^ | day | 'numeric', '2-digit' | | weekday | 'narrow', 'short', 'long' | | year | 'numeric', '2-digit' | | month | 'numeric', '2-digit', 'narrow', 'short', 'long' | | hour | 'numeric', '2-digit' | | minute | 'numeric', '2-digit' | | second | 'numeric', '2-digit' | ==== Vezető nulla ==== var d = new Date(); var ho = d.getMonth() console.log(String(ho+1).padStart(2, '0')); A hónapok számozása 0-tól kezdődik. Így a áprilisban 3-t ad a getMonth() függvény. ==== ISO formátum ==== var d = new Date(); var a = d.toISOString().split('T')[0] console.log(a); Eredmény: 2021-04-08 var d = new Date(); var a = d.toISOString().slice(0, 16).replace('T',' ') console.log(a); Eredmény: 2021-04-08 21:43 Az eredményt UTC időben kapjuk. ===== Visszaszámlálás =====
===== Ál-URL ===== Kattints ide Kattints ide ===== Navigátor ===== Böngésző típusa: window.alert(navigator.appName); | Mozilla változatok | Netscape | | Apple Safari | Netscape | | Opera | Opera | | Konqueror | Konqueror | | Internet Exploler | Microsoft Internet Exploler | Teljes böngészőazonosító karakterlánc: window.alert(navigator.userAgent); * Firefox * Mozilla/5.0 (X11; Linux i686; rv:14.0) Gecko/20100101 Firefox/14.0.1 * Epiphany * Mozilla/5.0 (X11; Linux i686; hu-hu) AppleWebKit/531.2+ Debian/squeeze (2.30.6-1) Epiphany/2.30.6 * Chrome * Mozilla/5.0 (X11; Linux i686) AppleWebKit/537.4 (KHTML, like Gecko) Chrome/22.0.1229.94 Safari/537.4 ===== Böngésző képességei ===== if(document.getElementById) document.write("Van"); else document.write("Nincs"); ===== Dokumentum objektum ===== ==== Domain ==== document.write(document.domain); Megkapjuk az IP címet, vagy domain nevet, amelyen hivatkoztak a weblapra. Például: 127.0.0.1 ==== Horgonyok ==== Első Második document.write(document.anchors[0].innerHTML); ==== Formok ==== document.write(document.forms.length); document.write(document.forms[0].name); ==== Képek ==== ==== Utolsó módosítás ==== document.write(document.lastModified); ==== Linkek ==== Első
Második
Első
Második
Első
Második
==== Státusz ==== document.write(document.readyState); ==== Visszahivatkozás ==== Melyik oldalról érkezett a felhasználó. document.write(document.referrer); Localhoston nem ad eredményt. Próbáljuk ki itt: http://szit.hu/homokozo ==== Teljes URL ==== document.write(document.URL); ==== Oldalcím ==== document.write(document.title); ===== Írás a weblapra ===== function hozzafuz() { document.getElementsByTagName("body")[0].innerHTML += "Ide"; } ===== Ablak ===== ==== Új ablak megnyitása ==== Szintaxis: window.open('megnyitott_url','ablaknev','tulajdonsag1,tulajdonsag2') Ez a függvény egy új böngészőablakot nyit. A további tulajdonságokat vesszővel elválasztva kell megadni. A paraméterek sorra: - 'megnyitott_url' * A weblapcím, amelyet szeretnénk megjeleníteni a megjelenő ablakban. - 'ablaknev' * Nevet adhatsz az ablaknak, amelyre később hivatkozhatsz. - 'tulajdonságok1,tulajdonságok2' * Az ablak egyéb tulajdonságait adhatjuk meg. Ablak tulajdonságok A következő tulajdonságokat használhatod. - width=300 * Az ablak szélessége. - height=200 * Az ablak magassága. - resizable=yes vagy no * Az ablak átméretezhető-e. - scrollbars=yes vagy no * Az ablaknak lehet-e görgetősávja. - toolbar=yes vagy no * Navigációssáv legyen-e. - location=yes vagy no * címsor megjelenjen-e. - directories=yes vagy no * Plusz gombok megjelenjenek-e. - status=yes vagy no * A státuszsor megjelenjen-e. - menubar=yes vagy no * Menüsáv megjelenjen-e. - copyhistory=yes vagy no * Az előzmények listáját megkapja-e az új ablak. Példa: Egyszerű példa: open("http://szit.hu"); Az ablakot elnevezzük "egy" néven: open("http://szit.hu", "egy"); Ennek újabb ablak nyitásakor van jelentősége. Ugyanezen a néven már nem tudunk másik ablakot nyitni. Új ablak, URL nélkül, szöveget írva bele, fókuszba téve: ablak=window.open('','','width=400,height=300'); ablak.document.write("

Az ablakunk'

"); ablak.focus()
ablak=window.open('','','width=400,height=300'); ablak.document.write(ablak.outerWidth); ==== Ablakméret ====
Ide
==== Ablak ==== ==== Képernyő ==== function meret() { var hely = document.getElementById("hely"); hely.innerHTML = window.screen.width + "x" + window.screen.height; } Screen Objektum tulajdonságok ^ Tulajdonság ^ Leírás ^ | availHeight | Visszaadja a képernyő magasságát (beleértve a folyamatkezelő-sávot is) | | availWidth | Visszaadja a képernyő magasságát (beleértve a folyamatkezelő-sávot is) | | colorDepth | Visszaadja színmélységet | | height | Visszadja a teljes képernyő magasságot | | pixelDepth | Visszadja a képernyő felbontást | | width | Visszadja a teljes képernyő szélességét | ==== Linkek ==== * http://www.w3schools.com/jsref/met_win_open.asp * http://www.w3schools.com/jsref/obj_window.asp ===== Képcsere ===== function changeImage(name, url) { if(document.images[name]) { document.images[name].src=url; } } ===== Rejt és mutat egy gombbal ===== function rejt() { var elem = document.getElementById("egy"); var gomb = document.getElementById("gomb"); var cont = gomb.innerHTML; if(cont == "Rejt") { elem.style.display = "none"; gomb.innerHTML = "Mutat"; } else { elem.style.display = "block"; gomb.innerHTML = "Rejt"; } }

Lorem ipsum ...

===== Objektum falbaütköztetése ===== SWBin
var v = document.getElementById("v").getContext("2d"); v.fillStyle="rgba(0,0,123,1.0)"; var x = 250; var y = 250; var az = document.getElementById("az"); var angle = 235; setInterval('move()', 5); function move(){ v.fillStyle="rgba(255,255,255, 1.0)"; v.fillRect(x-2, y-2, 8, 8); x += Math.sin(angle * Math.PI/180.0)*1.0; y += Math.cos(angle * Math.PI/180.0)*1.0; v.fillStyle="rgba(0,0,123,1.0)"; v.fillRect(x, y, 5, 5); angle = getNewAngle(angle); az.innerHTML = angle + " " + parseInt(x) + " " + parseInt(y); } function getNewAngle(actAngle){ var newAngle=actAngle; if(x>400){ //jobb fal if(actAngle < 180 && actAngle > 90) newAngle = actAngle + 90; if(actAngle < 90 && actAngle > 0){ newAngle = actAngle - 90; if(newAngle <0) newAngle = 360 + newAngle; } } if(x<=5){ //bal fal if((actAngle > 270) && (actAngle < 360)){ newAngle = actAngle + 90; if(newAngle>360) newAngle = newAngle - 360; } if((actAngle > 180) && (actAngle < 270)){ newAngle = actAngle - 90; } } if(y<0){ if((actAngle>180) && (actAngle < 270)){ newAngle = actAngle + 90; } if((actAngle<180) && (actAngle > 90)){ newAngle = actAngle - 90; } } if(y>400){ if(eval(actAngle) > 270 && eval(actAngle) < 360) newAngle = actAngle - 90; if(actAngle > 0 && actAngle < 90) newAngle = actAngle + 90; } return newAngle; } ===== Weblap újratöltése ===== location.reload(); ===== Kiíratás vezető nullákkal ===== function zeroFormatFill(num, len) { var newNum = Array(len).join("0") + num return (newNum).slice(-len); }