- eBay-es kütyük kis pénzért
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Gurulunk, WAZE?!
- Archttila: SMART tesztelés automatizálva: smartctl poller script Zsh-ban, RPi-re
- Luck Dragon: Asszociációs játék. :)
- gban: Ingyen kellene, de tegnapra
- btz: Internet fejlesztés országosan!
- sziku69: Fűzzük össze a szavakat :)
- Parci: Milyen mosógépet vegyek?
- bacsis: Gyere el a 11. BRSZK-ra!
-
Fórumok
LOGOUT - lépj ki, lépj be!
LOGOUT reakciók Monologoszféra FototrendGAMEPOD - játék fórumok
PC játékok Konzol játékok MobiljátékokPROHARDVER! - 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ésFÁ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
-
jeges
senior tag
Ja, vágom, és bocsánat, visszavonom, hajnalban nem igazán értem, miért nem ment...
Most kipróbáltam megint, és pörgött a dolog. Kissé furcsa, na mindegy, lehet, hogy már annyira (fél)zombi állapotban voltam, hogy vmit elqrtam.
Szóval sorry, mégis működik.
Ja, amúgy ha már beszó'tam, akkor hadd javasoljak is már egyben valamit

Legközelebb az ilyeneket inkább ide pakold fel, ahol meg is marad:
[http://jsbin.com]
Utólagos engedelmeddel (remélem nem gáz) inkább felraktam ide az általad mutatott példakódot: http://jsbin.com/unipur/edit#javascript,html,live
nem gáz, bár van saját pastebin account-om is.
igazából azt gondoltam, ha valahol, akkor a saját domain-emen már csak megmarad, ezér' raktam oda. de értékelem a jó szándékot. -
jeges
senior tag
Nálam ez Chrome-ban egyáltalán nem csinál semmit...

az azér' érdekes, mer' én is chrome-ba' próbáltam tegnap.
most hirtelen megnéztem ff-ben is, ott is megy, de alapvetően mindenhol kéne működjön (chrome, ff, opera, ie legalább)a lényege az, hogy az "a" tagre klikkelve (azaz a kéken belül) semmi nem történik, azon kívül viszont (a feketén ill a zöldeken belül) a számláló érzékeli a klikket, és eggyel növeli a jobb felsőben lévő négyzetbe írt számot.
-
jeges
senior tag
Akkor tényleg én vagyok a béna, én nem tudtam, hogy oldjam meg jquery-vel. De mindegy, mert most megy a css machinálással is. Legközelebb, majd jobban erőltetem.

erőltetni azér' nem kell
![;]](//cdn.rios.hu/dl/s/v1.gif)
-
jeges
senior tag
Végül a css-sel ügyeskedve megoldottam a dolgot.

Nekem nem akart összejönni az általad vázolt séma.

parancsolj: példa
kicsit bénácska, de az elv a lényeg, ami működik
próbálj klikkelgetni az ul, a li és az a tag-ek belsejébe, és figyeld a jobb felsőben lévő négyzetet
simán kimásoltam a kódot innen, és beleírtam, hogy növelje a divben lévő számot eggyel -
jeges
senior tag
Hát én ha elkapom az effekt előtt az a elemet és mondom neki, hogy return false, akkor az a-n nem csinál már semmit sem, ellenben az effekt is leáll.

Asszem nem szenvedek vele többet, csak az a elemre fogom az effektet megcsinálni.dupla volt
-
jeges
senior tag
Hát én ha elkapom az effekt előtt az a elemet és mondom neki, hogy return false, akkor az a-n nem csinál már semmit sem, ellenben az effekt is leáll.

Asszem nem szenvedek vele többet, csak az a elemre fogom az effektet megcsinálni.sztem félreértesz. arra szeretnék rámutatni, hogy ilyesmit úgy érdemes csinálni, ha nem a "li, de nem a" módon definiált elemre akarod aggatni az eseményt, hanem egyszerűen a #menu elemre. nagyjából így:
$('#menu').bind('click',function(e){
// "e" az esemény, amit elkaptunk, "t" az elem, amin elkaptuk
if(!e)e = window.event;
var t = e.target || e.srcElement;// "A" elemen nem csinálunk semmit
// ff-ben kicsit béna a text node-ok kezelése, ezért kell a parentNode-ot is vizsgálni
if(t.nodeName == "A" || t.parentNode.nodeName == "A")return;// egyébként az effektet futtatjuk
// ide írd az effektet, csak arra kell ügyelni, hogy "t" az elem, amire klikkelt a user// és a vége (nem kötelező)
return false;
});úgy is megoldható, ahogy Te elkezdted, csak nem túl hatékony, és kevésbé átlátható, mivel a li és az a elemek definíciói némileg kavarodnak.
a "kulcs" végső soron az, hogy a szülőn kapod el a gyerekek eseményeit, és miután eldöntötted, hogy melyik gyerektől származik a klikk, azt is eldöntheted, mit kezdesz vele.
-
jeges
senior tag
Rosszul írtam, ha leveszem az egeret az li-ről és beljebb megyek egy a-ra, pedig elvileg a szűrőfeltétel ott van, hogy not(>a).
<div id="menu">
<ul>
<li><a href="#" title="blablabla">blablabla</li>
</ul>
<div>
<div id="menufelirat"><span>ide jönnek a szövegek</span></div>//menüfelirat bal oldalon
$(document).ready(function(){
$('#menu li:not(>a)').mouseover(function () {
var t = $('a', this).attr('title');
$('#menufelirat span').text(t).type({time:400}).each(function() {
$('#menu li:not(>a)').mouseout(function() {
$('#menufelirat span').finishTyper();
$('#menufelirat span').empty();
});
});
});
});Teccikérteni?

Az li-re legyen effekt, de az li-n belüli a-ra már ne.

mivel a klikk a gyerekről a szülőkre "terjed" (event bubbling), ezt úgy tudod megoldani, ha a menüre definiált eseményben "elkapod" az a elemeken történt eseményt is. normál js-ben ez viszonylag egyszerű:
(feltételezve, hogy a teljes struktúra egy "menu" elembe van ágyazva)
menu.onclick = function(e){
// az esemény
if(!e)e = window.event;// az elem, amire klikkeltünk
var t = e.srcElement || e.target;// ha az A elemen vagy annak gyerekén vagyunk, nem csinálunk semmit
if(t.nodeName == "A" || t.parentNode.nodeName == "A")return;// itt csinálunk valamit
...// nem kötelező, de megakadályozzuk a klikk tovább-terjedését
return false;
}(szerk: javítás)
-
jeges
senior tag
-
jeges
senior tag
Szerver oldali fájllal nincs baj, csak nagyon macerás egy adatbázist létrehozatni velük. Amit linkeltél meg jó, csak ennél egyszerűbb dolgot szeretnék, saját oldalra. (ahol 1 képernyőn kifér az a 10 sorozat amit nézünk)
Jeges
Rákattintok a linkre, és úgy marad = úgy marad, nem csak átmenetileg lesz színezett.
Szeretném követni, hogy melyik sorozatból melyik részt láttam, és ez a legegyszerűbb módja, ezért szeretném ezt elérni. Azt hittem erre van már valami egyszerű javascript.ehhez szerver-oldali kód szükséges, mint már megírták korábban.
(látom, onnan küldtek ide - valszeg félreértésből) -
jeges
senior tag
Ha CSS-t használok, akkor csak nálam fog beszíneződni, amíg nem törlöm a cachet/előzményeket, vagy amíg nem nézem meg másik gépen. (div:active, és div:visited)
Áttűnést is lehet CSSel csinálni már (-moz-transition), de nekem tényleg csak az kéne, hogy ha random gépről ránézek, akkor az ott legyen.
nem biztos, hogy jól értem, mit szeretnél: a kérdésben olyasmit írtál, hogy ha rákattintasz a linkre, úgy marad. ebből nekem az jött le (lehet, tévesen), hogy ha valaki rákattint, neki úgy marad, másoknak meg nem. ezek szerint valami admin-felületet szeretnél, ahol beállíthatod, melyik link legyen a kiemelt egy-egy sorozatból?
-
jeges
senior tag
Üdv
Lehetséges MYSQL adatbázis nélkül csinálni olyasmit, ahol fel van sorolva 6-7 sorozat, mellette pedig a 1-24-ig számok, és ha rákattolok az 1esre, akkor annak megváltozik a színe, és kiemelt lesz? Példának okáért
How I Met Your Mother 1-2-3-4-5-6-7-8-9-10....
Esetleg ha tudjátok ennek mi a neve, akkor rákereshetnék neten, hátha van már kész script is, így viszont nem tudom mire keressek.
ehhez nincs szükség szerver-oldali kódra. önmagában az, hogy klikkre történjen valami a felületi elemmel (pl változzon a színe, mérete, háttérszíne, stb.), jó esetben elérhető html+css kóddal is (erre vannak többek közt a css pszeudo-osztályok). bonyolultabb (pl áttünések) történésekhez szokás javascriptet használni.
-
jeges
senior tag
most nézd meg újra, csináltam könyvtárat, beletettem a képet
szerk: az index.html a györkérben van, a kep nevű könyvtár "mellette", benne a kép
-
jeges
senior tag
-
jeges
senior tag
-
jeges
senior tag
Hali hó
Valaki tudna nekem segíteni ,hogy mit csesztem el ha a pofon egyszerű weblapnak alig nevezhető oldalamon nem akarnak megjelenni a képek? Az elérési utat cseszhettem el? mert az egész relativ hivatkozásosan lett megoldva mert szükségem volt hogy hordozható legyen pendrive-on. Please segitsen valaki. az oldalam
http://eichman.atw.hu/a segítségeket elöre is köszönöm.
ez ugyan nem igazán js probléma, de egyszerűen csak src="dir/file.jpg" megteszi. itt találsz továbbiakat is pl.
-
jeges
senior tag
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
<title>teszt</title>
<link rel="stylesheet" media="screen" charset="UTF-8" type="text/css" href="xc/css/xc.css" />
<style type="text/css">
#tst {width:800px; height:400px; display: block; float:left;}
</style>
<script type="text/javascript">
window.onload = function(){
lm = function(s){
return document.getElementById(s);
}
button1.onmouseup = function(e){
lm("res").innerHTML = lm("tst").getElementsByTagName("option")[lm("txt").value].innerHTML;
}
button2.onmouseup = function(e){
var o = lm("tst").getElementsByTagName("option");
for(var i in o){
if(o[i].selected) lm("res").innerHTML = o[i].innerHTML;
}
}
}
</script>
</head>
<body>
<select id="tst" style="display:block;">
<option value="0000">00000</option>
<option value="0001">00010</option>
<option value="0002" selected>00020</option>
<option value="0003">00030</option>
</select><br><br>
<input type="button" id="button1" value="show" style="display:inline;">
<input type="text" id="txt" style="width:100px;display:inline;" value="1">
<p style="display:inline;">. elem</p><br>
<input type="button" id="button2" value="show selected" style="display:block;">
<div id="res" style="display:block;float:left;position:relative; width:100px;height:60px;background:yellow"></div>
</body>
</html> -
jeges
senior tag
Sziasztok! Egy számológépet csinálok, amelyet grid layout-tal csináltam meg. Az lenne a feladat, hogy az 5 oszlop és 4 sor gombot tartalmazó panelen a jobb oldalon utolsó két oszlop gombjai dupla hosszúak legyenek, mint az első három oszlop gombjai. Bocs, de jobban nem tudtam elmagyarázni. Előre is kösz a választ!
lehet, h csak nekem nem egyértelmű, mi a kérdés?
meg kellene "rajzolni" a 20 négyzetet? vagy cellát?
elakadtál valahol, vagy helyetted kéne megírni? -
jeges
senior tag
string objektum split() eljárása erre való
pl.
var s = "xx|yy|zz";
var ar = s.split("|");
console.log(ar);ar ekkor egy három elemű tömb xx,yy,zz elemekkel, azaz ar[0] "xx" értéket vesz fel, és így tovább.
-
jeges
senior tag
Sziasztok!
A következő problémához kérném a segítségeteket.
Van egy comboList-em:
<form><select id="chtip">
<option value="34">valami
...document.getElementById('chtip').value segítségével elérem a kiválasztott opció "value" értékét (itt 34) és tudok vele számolni. Viszont én egy opciónál két értékkel szeretnék számolni, vagyis pl. a "valami" kiválasztása esetén nem csak a 34-el, hanem egy másik hozzá tartozó értékkel is.
A kérdésem az, hogy hogyan tudnék két "value"-t definiálni egy opcióhoz?
Előre is köszi.
hirtelen ezek jutnak eszembe:
gyors, rugalmatlan és nem túl szép: title használata
viszonylag egyszerű, de csak egy fokkal szebb: spec karakter (lásd előző hsz-ben)
egyszerű, de jq kell hozzá és nem működik mindenhol: .data()
egyszerű, de külső függvény kell hozzá: json objektuma probléma természetétől és bonyolultságától függően bármelyik alkalmas lehet.
-
jeges
senior tag
- - - - - - - - - - -
Lenne egy problémám ennél a résznél:
if($.jQupload.callback[id]){
eval($.jQupload.callback[id] + "('"+data1+"')")
}Hiba: Uncaught SyntaxError: Unexpected token ILLEGAL
Szintaxis hiba vagy logikai hiba?
ez az üzenet akkor szokott megjelenni, ha egy json objektumban nem stimm valami. olyan karaktert kapott, amit nem szeret (pl. aposztróf )
egyébként méér kell eval?
-
jeges
senior tag
Igen alapból új fonttal akarom kiíratni, ahogy az első pontban mondtad.
A teljes script megtekinthető itt: [http://pastebin.com/0tVY7wdH]
ha módosítom a css-t és nem használok div-t
@font-face {
font-family: Comfortaa;
font-style: normal;
font-weight: normal;
src:url(font/comfortaa.ttf)
}a próba kedvéért most h1-nek adok stílust
h1{
font-family: "Comfortaa";
text-align: center;
}és módosítom azt a sort a javascriptben ami kiírja a névnapot (utolsó sor)
document.writeln("<h1>"+havinev(ev,ho,nap)+ " napja van.</h1>")
na ez sem működik és nem tudom hol rontom el.

(ez nem honlapban fog működni, hanem az opera gyorshívójában. Elvileg az is úgy működik mint egy honlap, van neki index.html-je, config.xml-je stb. Az extension-öm kiváűlóan működik windows oprendszeren. most csak szeretném szépítgetni és a betűtípussal kezdeném.)
css-t ennyire nem vágom, de nem a pontosvessző hiánya az oka? @font-face utolsó sorából mintha hiányozna
-
jeges
senior tag
Sziasztok!
Akadt egy kis problémám javascriptben.
Azt kellene megoldani, hogy van egy névnap kiíró scriptem, ami működik, tulajdonképpen a netről van bogarászva.
Be tettem sikeresn honlapba. Viszont szeretném megváltoztatni a betűtípust. itt most nem méret/félkövér/dőltre gondolok, hanem font cserére.
css-ben ugye ott a font face
ami így néz ki:
@font-face {
font-family: Comfortaa;
font-style: normal;
font-weight: normal;
src:url(font/comfortaa.otf)
}#nevnap{
font-family: "Comfortaa";
text-align: center;
}viszont amikor fogom, hogy:
<div id="nevnap">
<script TYPE="text/javascript" charset="iso-8859-2" src="js/nevnap.js"></script>
</div>akkor nem változik továbbra sem semmi. Mit csinálok rosszul?
a script tag-et a <head>-be kéne tenni, de igazából nem egyértelmű, mi az elvárt:
1) eleve más betűtípust szeretnél: ekkor a css-ben kell átarni, nincs js
2) valami eseményre (pl div-be klikkre) akarod módosítani a típust, ekkor a js eljárásban hozzá kell kötni az elem eseményéhez a módosításta) a head részben:
var lm = document.getElementById("enDivem");
lm.onclick = function(e){
<kód>
}+ a body-ban pedig a div:
<div id="enDivem">b) vagy a div-be definiálod bele, ekkor kb:
a html head-ben:
<script type="text/javascript">
function divClick(){
<kód>
}
</script><div id = "enDivem" onclick="divClick">
(normál esetben az 1, ill 2 a) preferált, a 2 b) elfogadható)
-
jeges
senior tag
Sziasztok!
2 napja kezdtem el jQuery-t tanulni, bármiféle JavaScript tudás nélkül. Kerestem már a Dom fogalmát, mindig valami más-más fogalmat kaptam.
A jQuery könyvben néha gondot okoz, hogy most mit ért Dom alatt. Nekem az jött le, hogy egy html-tagok egy csoportját, amit lehet fastruktúrában alkalmazni, "felírni".Ha valaki röviden, tömören tudna egy DOM példát adni, annak örülnék. Én az összes megközelítésből azt vettem észre, hogy nem több html-tag-ek csoportjánál.
-
jeges
senior tag
Ezért nem értem miért nem működik ez a parancs: $('#suggIrszam').hide();
debug-hoz ez kicsit kevés. több kellene.
-
jeges
senior tag
Hmm... Nem hiszem, hogy ilyen bonyolult kódra lenne szükség. Nem rágtam át magam teljesen rajta. Ezt a kódot használtam fel: autoComplete. Itt automatikusan eltűnik a lista ha mellé kattintok.
nem, tényleg nem kell hozzá, "csak" egy jquery.

emez bonyolultnak tűnhet, viszont önállóan is müxik -
jeges
senior tag
írtam, hogy class-t definiálni kell nyilván css-ben (mondjuk display:none; )
abban igazad van, hogy mindig hozzáadódik, de ezt egy class vizsgálattal lehet rendezni.
pl.function hasClass(ob,cl) {
var r = new RegExp("\\b" + cl + "\\b", "i");
if ( ob && ob.className && ob.className.match(r) !== null ) return true;
return false;
}a document.onmouseup-ba pedig vedd be, hogy csak akkor adja hozzá a classt, ha a fenti fv false-ot ad.
pl.
var lm = document.getElementById("ID");
if (!hasClass(lm, "hiddenClass"))lm.className += " hiddenClass";szerk: jelen esetben ez úgy fog kinézni, hogy
if (t != lm && !hasClass(lm, "hiddenClass"))lm.className += " hiddenClass";no most van egy kis időm öszeszedni a kódot:
css:
.hiddenClass {display:none;}
js:
function hasClass(lm,cl) {
var r = new RegExp("\\b" + cl + "\\b", "i");
if ( lm && lm.className && lm.className.match(r) !== null ) return true;
return false;
}
function addClass(lm,c){
lm.className = (lm.className.length > 0) ? lm.className + " " + c : c;
}
function isParent(p,lm){
if(!p || !lm)return false;
if ( p == lm ){
return true;
} else if (lm.parentNode) {
while (lm = lm.parentNode){ if ( p == lm ) return true; }
}
return false;
}
document.onmouseup = function(e){
if (!e)e = window.event;
var t = e.target || e.srcElement;
var lm = document.getElementById("ID"); // ez itt az eltüntetendő elem
if(!hasClass(lm, "hiddenClass") && !isParent(lm, t))lm.className += "hiddenClass";
} -
jeges
senior tag
Oké, hozzáadódik az osztály elemhez az hogy "hiddenClass" de ettől még nem tűnik el. Viszont akárhányszor kattintok beleíródik az osztályba az hogy "hiddenClass".

írtam, hogy class-t definiálni kell nyilván css-ben (mondjuk display:none; )
abban igazad van, hogy mindig hozzáadódik, de ezt egy class vizsgálattal lehet rendezni.
pl.function hasClass(ob,cl) {
var r = new RegExp("\\b" + cl + "\\b", "i");
if ( ob && ob.className && ob.className.match(r) !== null ) return true;
return false;
}a document.onmouseup-ba pedig vedd be, hogy csak akkor adja hozzá a classt, ha a fenti fv false-ot ad.
pl.
var lm = document.getElementById("ID");
if (!hasClass(lm, "hiddenClass"))lm.className += " hiddenClass";szerk: jelen esetben ez úgy fog kinézni, hogy
if (t != lm && !hasClass(lm, "hiddenClass"))lm.className += " hiddenClass"; -
jeges
senior tag
Ezt most nem teljesen értem. Ez nem csak akkor hajtódik végre ha a div-re kattintok? Nekem olyasmi kellene ami, ha megjelenik a div és mégse abból a listából választana az ügyfél és emiatt félrekattint, akkor eltűnik ez a div. Olyasmi mint amikor a facebook-on keresőmezőbe írsz, előjönnek a lehetséges találatok, de ha mégse választasz semmit, csak félrekattintasz és eltűnik.
nem, a document.onmouseup minden katt-ra végrehajtódik (bárhová is katt), de csak akkor tünteti el a div-et, ha nem a div-be kattintottál. ezt csinálja az if(lm != t) feltétel (lm a div-ed, t a katt esemény forráseleme (ie-ben srcElement, mindenhol máshol target). ha a kettő eltér (azaz kikatt a div-ből), eltüntetjük a div-et.
(most látom, kicsit elírtam, mer' a className += után kellene egy space is, hogy ne egybe írja az előző class-okkal.)
-
jeges
senior tag
Köszi! A "meztelen" js tökéletes!

Lenne még 1 kérdésem.
Van egy ajax-os kérés. Ennek az eredményét egy div-be iratom ami akkor jelenik meg amikor visszatér az eredménnyel a kérés. Addig style="none".Nos, ha ebből a listából kiválasztok egy rekordot, akkor ez a div eltűnik.
setTimeout("$('.suggestions').hide();", 200);
Ha viszont kikattintok az input mezőből, vagy máshova (összevissza) nem akar eltűnni, csak akkor ha kiválasztok valamilyen elemet ebből a div-ből.
Próbálkoztam onblur-ral amit beraktam a div-be és hozzá ezt a fv-t írtam:
function blur() {
var ele = document.getElementById('suggIrszam');
ele.style.display = "none";
}Próbálkoztam egyszerű jquery-vel is: //$('#suggIrszam').hide();
Erre van valami ötleted?
ez a "kikattintós" cucc szerintem azt feltételezi, hogy van egy document.mouseup vagy document.mousedown függvényed, amiben megmondod a js-nek, hogy tüntesse el a megadott elemet. emlékeim szerint a jquery ezt automatán tudja egyébként, bár most nincs előttem a kódja.
pl. ha "ID" az eltüntetendő elem
document.onmouseup = function(e){
if (!e)e = window.event;
var t = e.target || e.srcElement;
var lm = document.getElementById("ID");
if(t != lm)lm.className += "hiddenClass";}
blur azér' nem jó, mer' ilyen eseménye csak input elemeknek van, div-nek nincs.
mellékszál, de én className-mel operálnék közvetlen style manipulálás helyett, ez tkp szabadon választott.
persze lehet még szinezni (pl. van-e gyereke a vizsgált elemnek), de most az elv átadására törekedtem.
szerk: a document.onmouseup helyett persze lehet addEventListener-t is használni, de annak is megvannak a korlátai, most az egyszerűség végett a "hagyományos" .onmouseup-ot használtam.
-
jeges
senior tag
document.getElementById('tel').innerHTML += '<input type="text" id=""tel'+ ct +'" value="" />';
Ehhez a parancshoz kapcsolódik a következő kérdésem: Hogy tudom úgy hozzáadni a következő input mezőt, hogy az előzőből nem törlődnek az adatok? Amikor hozzáadok egy input mezőt, az előzőkből törlődik minden.
a "tel" az valami div?
én createElement-tel, ill appendChild-dal/insertBefore-ral oldanám meg, jquery-ben append-del."meztelen" js-ben pl:
var tel = document.getElementById("tel");
var newInput = document.createElement("input");
newInput.type = "text";
newInput.value = "inpVal";
newInput.className = "inputClass";
tel.appendChild(newInput);ezzel a korábbi gyerekeket bántatlanul hagyod
ha nem az utolsó helyre rakod, akkor kell insertBefore.jquery-ben:
var newInput = "<input type='text' value='inpVal' class='inputClass'>";
$("#tel").append(newInput);(most konkrét példán nem próbáltam ki, de az elv remélem lejött: nem innerHTML-t hanem közvetlen dom-ot kell manipulálni)
-
jeges
senior tag
A probléma összetett, de talán ide illik a legjobban. Adott egy űrlap. Erre az űrlapra kilistázunk pár telefonszámot. Új telefonszámokat, új input mező hozzáadásával lehet felvenni. A felhasználó bármennyi új (input) mezőt felvehet.
Azt szeretném megoldani, hogy minden egyes telefonszámot, egyesével (tehát 1 input mező - 1 telefonszám), AJAX segítségével lehessen elmenteni az adatbázisba. Tehát hozzáad az ügyfél egy mezőt, beírja a telefonszámot, majd elmenti.
Egyedi id-vel és névvel ellátott mezőt generálni sikerül. Ezekhez a mezőkhöz egyetlen fv. kapcsolódna amely elmentené (egyesével) az értékeket.
Új input mező felvétele:
ct = 0; //számláló
function addInputTel() {
document.getElementById('tel').innerHTML += '<input type="text" id=""tel'+ ct +'" name="tel'+ ct +'" value="" /><img onclick="uploadTel("tel'+ ct +'")" src="images/arrow_up.png" alt="Feltöltés" /><br />';
ct++;
}Tehát, minden új input mező, új id-t és nevet kap a számláló (ct) segítségével.
Az id segítségével ( ("tel'+ ct +'") => InputId ) hivatkoznék jQuery-vel az inputra:
function uploadTel(InputId) {
var $tel = $('input[name="InputId"]').val(); //megkeresi az id alapján az inputot és eltárolja az értékét (?)
//adatok mentése
}Ez a fv. lenne hivatott arra, hogy feltöltse a mező értékét, amelynek értékére az id alapján próbálok hivatkozni.
Akárhogy próbálkozok, nem tudom úgy beszúrni az InputId-t (ami a feltöltendő input mező id-je), hogy visszaadja az értékét.Talán szintaktikai hibát vétek, vagy van valami jobb fv. erre? Ha van valami egyszerűbb megvalósítási ötlet azt is szívesen fogadom,

ha az id egyedi, simán lehet stringből összerakni:
ha "id" az egyedi azonosítód:
var nm, obj;
nm = "#" + id;
obj = $(nm);sőt:
var obj = $( "#" + $("#otherid").val() );
(ha másik elemből akarod kivenni az elem id-jét)postoláshoz a $.post() javallott.
-
jeges
senior tag
-
jeges
senior tag
Megoldottam. A nyomtatási linkben a href-nek a végére betoldottam egy "-nyomtathato" karakterláncot, amit az oldal betöltésekor php-ben vizsgálok, jelen van-e. Ha igen, a head részben létrehozok egy JS változót is neki igaz értékkel és a script-ben szépen elvégezem a teendőket. Tökéletesen működik.
Lenne még egy olyan kérdésem, hogy JS-ben nem tudok végrehajtani indexOf()-t a document.location-ön. Mi ennek az oka?
ie nem támogatja az indexOf() eljárást tömbökön
nem lehet, hogy ez a baj? milyen böngészőn teszteled?ezt próbáld ki: [link]
-
jeges
senior tag
Sziasztok!
Egy gomb lenyomasara kene csokkentenem az x valtozo erteket egyel!
<html>
<head>
<title>01</title>
<id="1" style="font-size:50px;">_
<script type="text/javascript">
function modosit(){
document.getElementById("1").innerHTML="k";
}
x=8;
document.getElementById("1").innerHTML="_";</script>
</body>
</html>Egy gombot szeretnek beilleszteni ami az x valtozo erteket egyel csokkenti, majd kiirja az erteket. Ha a valtozo elerte a 0-t akkor pedig a program bezar es megnyit egy masik html oldalt.
Kossz elore is!
valóban sok a javítanivaló a kódon, ami elsőre is feltűnő, hogy a head tag nincs bezárva, a body pedig nincs megnyitva.
html elemeket csak a body tagba tegyél, a js kódot pedig célszerű a head-be.
az "elem", amit beírtál a js elé valóban nem értelmezhető, hiszen nincs megadva, milyen elem. ha pl gombot szeretnél, akkor input (azaz 'input type="button"'), de a megadott adatok bizony kevéske a megfelelő értelmezéshez.
ezen felül a fejből (ill. előle) egy sor értelmező deklaráció hiányzik.
szerintem próbálj ki egy olyan szerkesztőt, ami automata módon tud létrehozni sablonokat, elemeket, abból sokat lehet tanulni. -
jeges
senior tag
Megváltoztattam.
Csak a body-ban volt/van konkrét érték megadva, minden más esetben em-et használok.
Néztem én is néhány plugin-t, bosszankodtam is, miért működnek.
Azonban úgy voltam vele, nagyon égő, ha ilyen egyszerű feladatra is plugint használok. No meg abból nem is tanulok.
Azért pl. fájlletöltésre már simán használom a jDownloadert.
kulcsszavak vs px:
annyaira azér' nem egyszerű a kérdés... ie-ben nincs computedStyle, ami "átváltaná" a szavakat (small, large, stb) pixel értékekre. jquery bicskája is ugyanebbe törik bele, mivel a kulcsszavak függnek az aktuális felbontástól, plusz ie-ben (elsősorban régi ie-kben) vannak beállítások, amiktől nem lehet belőlük számolni. sajna ha css-ben adsz fix értéket, akkor meg bizonyos körülmények között nem lehet módosítani rajta ie6-ban, így marad a "szokásos" osztály-módosítós játék (ha elegendő 3-4 nagyság), vagy inline cssText (ez utóbbira mutattam én példát fentebb), vagy em, ill %.
pl itt lehet róla olvasni, ha mélyebben érdekel -
jeges
senior tag
Hrrrrrrrrrrrrrrrrr. A css-ben a font-size medium-ként van megadva, nem pixelben. Chromium, FF és gondolom minden más böngésző pixelt ad vissza a jquery css() függvényre. IE medium-ot.
Tudom, a legegyszerűbb megoldás px-ben megadni, de nincs rá lehetőség, hogy IE-nél is kinyerjem valahogy a pixel számértéket?én ezeket használom most:
function getStyle(oElm, strCssRule){
try{
var strValue = "";
if(document.defaultView && document.defaultView.getComputedStyle){
strValue = document.defaultView.getComputedStyle(oElm, "").getPropertyValue(strCssRule);
}
else if(oElm.currentStyle){
strCssRule = strCssRule.replace(/\-(\w)/g, function (strMatch, p1){
return p1.toUpperCase();
});
strValue = oElm.currentStyle[strCssRule];
}
var num = strValue.replace(/[\sa-z]+/gi, '');
var str = strValue.replace(/[\d\.]+/i, '');
return [parseFloat(num), str];
}catch(er){return [0,"px"];}
}
function setStyle(obj,st,vl){
var a = obj.style.cssText;
obj.style.cssText = (a.length>0) ? a + ";" + st + ":" + vl : st + ":" + vl ;
}
function removeStyle(obj,st){
str = new RegExp("(?:\\b|^)" + st + "\\s?:[^;]*(?:$|;)", "i");
obj.style.cssText = obj.style.cssText.replace(str, "");
}ie6+, ff, opera, chrome megette eddig.
-
jeges
senior tag
amennyire én tudom, az ie saját beállításain túl az oprdsz jogosultsági beállításai számítanak. azaz hiába írnál egy fájlt böngészőből, ha a win szerint nincs hozzá jogod. ie6-ban alapvetően az activex vezérlőket kell engedélyezni.
-
jeges
senior tag
Üdv!
Lehet olyan scriptet írni, amely egy input mezőből a szöveget hozzáfűzi egy meglévő fájlhoz? Mindez persze a sajátgépen lenne futtatva, nem szerveren vagy hasonló. IE6 alatt, más alá nem kell, hogy kompatibilis legyen. Amit eddig találtam a neten, azok vagy nem mentek, vagy bajuk volt. Lehetőleg ne keljen állandóan megerősíteni az írást.

igen, lehet, de a működése a böngésző, valamint a windows beállításaitól függ, nem pedig a programtól. ugyanez vonatkozik a megerősítésre is.
-
jeges
senior tag
a "nagyobb" függvénytárak mind tudnak ilyesmit gyártani Neked (lásd pl itt, ill az előttem szóló példáit)
ha magad szeretnél ilyesmit, vagy nem akarsz külső függvénykönyvtárat használni, akkor a js eseménykezelési eljárásairól olvasgass (event delegation)
konkrét példát/kódot mondani nem könnyű a konkrét oldal ismerete nélkül. -
jeges
senior tag
Azért csináltam így, megmondom őszintén, mert én nem vettem észre, hogy a C az ( ) -ben van, és nem [ ] -ben
próba .. de itt PH-n mindkettő []-ben van, akkor így viszont nem értem a hsz-ed
mod: jah látom már, hogy mire gondolsz, nem tudom, hogy ott miért kerekbe rakta a C-ket pedig én már az elejétől kezdve mindenhova [] szögletest tettem.. érdekes, nekem fel sem tűnt, hogy az egyik hszemben rosszul van...
(szerintem a kérdésben jelen esetben benne van a válasz: valszeg a ph motor átírja, ez látszik mindkettőtök hsz-én)
-
jeges
senior tag
még tovább gondolva:
[^|\s][1-9]\d?\d?(\.\d{3})*\s+ft
sajna egyelőre nem tökéletes, de a hármas csoportok többszörözhetők bárhányszor
az elejére betettem egy kezdő karaktert (vagy a szöveg eleje vagy valamilyen üres karakter) -
jeges
senior tag
no még egyszer:
/[1-9]\d?\d?\.d\{3}\s+ft/gijavítás: a \d karakterek opcionálisak ( azaz 3.333, 33.333 és 333.333 is jó kell legyen )
valahol eltűntek a kérdőjelek az éterben... -
jeges
senior tag
szia,
ez 999.999-ig jó lehet:
/[1-9]\d\d\.d\{3}\s+ft/gig mellett az (i)nsensitive kapcsolót is érdemes on-ra tenni, hátha vki Ft-nak vagy FT-nak írja
első karakter ne legyen nulla (általában nem értelmes), és 3-mas csoportok legyenek
üdv
j -
jeges
senior tag
Szia, köszi ez már majdnem jó
lehet, hogy én használtam rosszul, de most ez lesz az output:LAP: GIGABYTE GA-870A-UD3 [M](C).(/C)[/M]
CPU: AMD Phenom II 965 3.40Ghz AM3 BOX Black Edition [M](C).(/C)[/M]
RAM: KINGSTON 4096MB DDR3 1333MHz CL9 KIT KVR1333D3N9K2/4G [M](C).(/C)[/M]
VGA: GIGABYTE GV-N460OC-768I GTX460 768MB GDDR5 PCIE [M](C).(/C)[/M]
HDD: SAMSUNG 1000GB F3 7200rpm 32MB SATA2 HD103SJ [M](C).(/C)[/M]
ODD: LG GH22NS50 Fekete OEM [M](C).(/C)[/M]
HÁZ: GIGABYTE GZ-X1 Fekete [M](C).(/C)[/M]
TÁP: GIGABYTE Superb 460W [M](C).(/C)[/M]Tehát már hozzáfűzi a dolgokat csak az árak nem jelennek meg, hanem helyette egy 'pont'

Így használom a függvényt:
area = wrapText(area,digit,"[M](C)","(/C)[/M]");
az fog megjelenni a '$1' helyén, amit zárójelbe teszel. mivel a digit változódban a . van zárójelben, ezért egy . jelenik meg. tedd a teljes kifejezés köré a zárójelet -> /(kifejezés)/gi
szerk:
var digit = /([0-9]+\.[0-9]+\s+Ft)/g;
tettem egy +-t a \s mögé, hátha elírja valaki, meg egy escape-et a . elé, hogy ne "bármilyen karakter" nek ismerje fel, hanem .-nak
(bocs, nem teszteltem, ezt már rád bízom) -
jeges
senior tag
Sziasztok, kis segítség kéne.
van egy textarea-m amiben van szöveg, ezt elmentem egy area nevű változóba, majd egy ilyen kódot csinálok:
var digit = /[0-9]+(.)[0-9]+(\s)(Ft)/g;
var match = digit.exec(area);
area = area.replace(match[0],"[M](C)"+match[0]+"(/C)[/M]");Ez most azt csinálja, hogy a szövegben lévő első -a digit regExp általál megtalált találatot, ami esetünkben egy ilyen alakú szám: "12.000 Ft"- találatot lecseréli, a találata plusz hozzárakja ezt: "[M](C)"+match[0]+"(/C)[/M]"
Nekem olyan kód kéne, ami végigmegy a szövegen (area változó) és minden egyes találatnál lecserélné a találatot magára a találatra, de elébiggyesztené ezt: "[M](C)"(/C)[/M] , valamint mögé ezt:[M](C) "(/C)[/M]"
Gyakorlatban amit szeretnék:
példa szöveg:
Alaplap GIGABYTE GA-H55M-UD2H 1 db 22.538 Ft
Processzor INTEL Core i3-540 3.06Ghz 1156 BOX 1 db 26.650 FtEzt most lecseréli erre:
[B]LAP:[/B] GIGABYTE GA-H55M-UD2H [M](C)22.538 Ft(/C)[/M]
[B]CPU:[/B] INTEL Core i3-540 3.06Ghz 1156 BOX 26.650 FtDe amint látjátok, csak az első találot cserélte le az árnál, a másodikat már nem
Tudom, hogy jelen esetben a match[0] miatt teszi, de így legalább csinált valamit
üdv és köszifunction wrapText(t, re, b, a){
var r = new RegExp(re);
return t.replace( r, b + '$1' + a );
}t -> a szöveg, amiben manipulálni akarsz (nálad az area)
re -> a regexp kifejezés, amit keresel (nálad a digit)
b -> a regexp elé beszűrandó elem
a -> a regexp mögé beszűrandó elem
Új hozzászólás Aktív témák
-
Fórumok
LOGOUT - lépj ki, lépj be!
LOGOUT reakciók Monologoszféra FototrendGAMEPOD - játék fórumok
PC játékok Konzol játékok MobiljátékokPROHARDVER! - 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ésFÁ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
- Amlogic S905, S912 processzoros készülékek
- Autós topik
- Macrodroid
- A Linux megnégyszerezte magát a Steamen — a Microsoft ismét ígérget
- Projektor topic
- Debrecen és környéke adok-veszek-beszélgetek
- AliExpress tapasztalatok
- Fotók, videók mobillal
- általános iskolai rendszergazda
- Ne késd le a határidőt! (Secure Boot 2026)
- További aktív témák...
- DDR4 memóriák eladóak
- Hihetetlen Gaming PC brutális specifikációkkal! A dán Topdata.dk IT-cég által összerakva
- 2.5" 100% noti HDD-k Western Digital, Seagate 320Gb (3k) +1Tb (15k) van 1db SSHD is (15k)
- Lenovo P16s gen2 16" //Core i7 1360P // Nvidia RTX A500 4GB GDDR6 // 16Gb /512GB SSD/ gyári garancia
- Micron és Samsung 32GB ram 1 x 32GB 3200Mhz vagy 2 x 16GB 2666Mhz - több db elérhető
- AMD GAMER PC! 7800X3D / RTX 5070 Ti / 32GB DDR5 / B650 / 1TB Gen4 / 850w Gold! BeszámítOK
- Acer Chromebase All-in-One PC 23.8" Touchscreen
- Eladó egy soundcore boom 2 se
- Dobozos ÚJ Lenovo Legion 5 2.5K OLED i7-13650HX 32gb ddr5 1 TB RTX 5070 Garancia
- Dobozos Új HP OmniBook 5 Flip 2-in-1 érintőkijelzős laptop i5-1334U 16gb ram 512ssd Garancia
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

Most kipróbáltam megint, és pörgött a dolog. Kissé furcsa, na mindegy, lehet, hogy már annyira (fél)zombi állapotban voltam, hogy vmit elqrtam.

![;]](http://cdn.rios.hu/dl/s/v1.gif)






Csak a body-ban volt/van konkrét érték megadva, minden más esetben em-et használok.
