JavaScript != Java (A JavaScript nem összekeverendő a Javával, két különböző programozási nyelvről van szó!)
Gyorskeresés
Legfrissebb anyagok
Általános témák
LOGOUT.hu témák
- [Re:] [Sub-ZeRo:] Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- [Re:] [M0ng00se:] Northwood vs Prescott + tuning: a tesztek
- [Re:] [bitpork:] 2024 phautós tali ?
- [Re:] [gban:] Ingyen kellene, de tegnapra
- [Re:] eBay-es kütyük kis pénzért
- [Re:] [ubyegon2:] Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- [Re:] [stefi68:] AnySoft Keyboard (magyarul)
- [Re:] Ketogén étrend
- [Re:] [Robert07:] Intel SSD DC S3500 - kiváló ügynök volt
- [Re:] Android másképp: Lineage OS és társai
Szakmai témák
PROHARDVER! témák
Mobilarena témák
IT café témák
Téma összefoglaló
Hozzászólások
jeges
senior tag
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.
Hujikolp
őstag
És ezek a beállítások fájlban valahol el vannak tárolva, vagy regeditben?
Gondolom azt a biztonsági csúszkát kell lejjebb állítani. Ha viszont egy korlátozott felhasználó van, akkor is lejjebb lehet valahol állítani?
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.
Siriusb
veterán
Készítettem egy kódot weboldal betűméret változtatására, mely Firefoxban természetesen működik, IE-ben:
$("li.fel,li.le,li.eredeti").each(function(){
$(this).hover(function(){$(this).css("color","red")},
function(){
szin = $("#tartalom").css("color");
$(this).css("color",szin)});
$(this).click(function(e){
e.preventDefault();
$(this).fontSize();
});
});
és
jQuery.fn.fontSize = function() {
switch ($(this).attr("class")) {
case "fel":
betumeret = parseInt($("#tartalom").css("font-size").replace(/px/, ""));
if (betumeret < 24){
ujMeret = betumeret + 1;
$("#tartalom").css("font-size", ujMeret + "px");
}
break;
case "le":
betumeret = parseInt($("#tartalom").css("font-size").replace(/px/, ""));
if (betumeret > 10){
ujMeret = betumeret - 1;
$("#tartalom").css("font-size", ujMeret + "px");
}
break;
default:
$("#tartalom").css("font-size","medium");
break;
}
};
Lenne valakinek javaslata a megoldásra?
Sk8erPeter
nagyúr
Úgy is próbáltad, hogy az e.preventDefault();-ot a fontSize() függvényhívás utánra teszed? Mellesleg ha sima <li> listaelemekbe pakoltad be, akkor mi szükség van a preventDefault()-ra?
Vagy <a> tagekbe raktad? Ha utóbbi, akkor miért nem az a-ra (és miért a li-re) vonatkoztatva kezeled a click eseményt?
A hozzá tartozó HTML-kódot sem ártana látni.
Esetleg fel tudod rakni egy ingyenes tárhelyre a lényeget? Úgy könnyebb lenne kipróbálni és debuggolni.
Egyébként simán lehet, hogy az each-re nincs is szükség.
Sk8erPeter
Siriusb
veterán
Csak sima listaelemekben vannak. Szerintem azért írtam preventDefault()-ot, hogy biztosra menjek.
Kipróbálom a javaslataidat, kösz. Ha nem megy, még jövök.
Siriusb
veterán
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?
Sk8erPeter
nagyúr
És ha a CSS-fájlodban explicite megadod, hogy a #tartalomnál mekkora legyen a betűméret px-ben, akkor is medium-ot ad vissza? Csak nem már.
Amúgy ennél a résznél:
default:
$("#tartalom").css("font-size","medium");
break;
nem is értem, minek "medium"-ot adsz meg, így nehéz ebből int értéket kiszámolni.
Ezt is változtasd meg az általad közepesnek tekintett betűméretre. Gondolom ez nagyjából a 17px-es érték lehet nálad, ha a 24 a max, 10 a min, nem?
Bár lehet, hogy ez nagy lesz alapból kicsit.
Sk8erPeter
jeges
senior tag
é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.
Siriusb
veterán
wow, nem semmi...
@Sk8erPeter
Mivel a css-ben is medium-ra van állítva. Mindazonáltal a legtisztább megoldás mégis a px-ben történő értékadás lesz.
Kösz mindkettőtöknek a válaszokat.
Sk8erPeter
nagyúr
"Mivel a css-ben is medium-ra van állítva."
Erről beszélek, hogy ezt változtasd meg...
Vannak előre megírt jQuery-pluginek ilyen célra: [link]
Ki lehet próbálgatni őket (Try out a demonstration).
==========
(#2059) jeges: ennek mi köze az egész konkrét betűméret-állításhoz?
Ez csak általános stílusbeállítgatás és -eltávolítás.
Ráadásul konkrét használati példát sem adtál rá, hogy jelen esetben hogyan lehetne hasznát venni. (Nyilván én tudom, de nem értem, miért is lenne az jobb, mint amit Siriusb eddig összehozott... Ennek a pontos feladathoz nem sok köze van.)
[ Szerkesztve ]
Sk8erPeter
(#2062) Sk8erPeter válasza Sk8erPeter (#2061) üzenetére
Sk8erPeter
nagyúr
Siriusb
veterán
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.
jeges
senior tag
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
Siriusb
veterán
Kösz a linket.
Részemről úgy döntöttem már egy ideje, hogy IE6-ot nem támogatom. Aki még mindig azt akarja használni - az én statisztikáim alapján ez az IE használók kb. 10%-a, illetve mostanában már az alá csökkent -, az így járt. Különben is, használjanak Enterprise-t, vagy Commodore 64-et, ha a régi cuccok jönnek be nekik.
MoW
csendes 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!
"There is no patch for stupidity" Kevin Mitnick
Sk8erPeter
nagyúr
Az kemény.
<id="1" style="font-size:50px;">
Ez szerinted mégis milyen HTML-elem?
Miután ezt a kérdést megválaszoltad, arra adj választ, hogy sikerült ilyen fantáziadús azonosítónevet választani, mint az "1"?
Ezenfelül mégis a modosit() függvényed minek hatására kéne, hogy meghívódjon?
Hol van a gomb, amivel szeretnéd a módosításokat elvégeztetni? (pl. <button> elem HTML-ben, vagy <input> elem is lehet)
Hol csökkented az x változó értékét? (Válasz: sehol.)
Ha ezekre a kérdésekre minden választ megadnánk, és egy az egyben odaraknánk eléd egy megoldást, akkor abból semmit nem tanulnál.
Ahogy elnézem, még van mit, HTML-ből és JavaScriptből egyaránt.
Csak úgy tudsz bezárni JavaScriptből ablakot, hogy scripttel is nyitottad meg.
Új URL betöltését pedig a window.location-nel kezdeményezheted.
Sk8erPeter
jeges
senior tag
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.
ubid
őstag
Helló!
Egy kis segítséget kérnék!
Van egy oldal , amin van egy hírdoboz javascripttel készítve.
minden böngészőbe fut, egyedül firefox 3.6 -ban nem tölt be. prögeti a preloader, de csak pörög és nem tölti be végleges állapotba.
hogy lehetne ezt lekezelni ?
esetleg ha kódot kell mutatnom beírom, nem hosszú.
valakinek valami ötlet.
-.-
ntomka
nagyúr
Hát nyilván jó lenne látni ahhoz, hogy meg tudjuk mondani mi a hiba.
ツ Headphones on - World off
ubid
őstag
a script ezen az oldalon található.
http://www.jquery-plugins.hu/plugin/36-lof-jslidernews.html
ez pedig a deklaárciója.
<script type="text/javascript">
$(document).ready(function(){
$('#scrollbar1').tinyscrollbar();
$('#example2').lofJSidernews({
interval: 4000,
easing: 'easeInOutQuad',
duration: 1200,
auto: true
});
});
Köszi a segítséget
-.-
ntomka
nagyúr
Ha jól látom ez alapján csináltad: [link]. Mondjuk nekem nincs 3.6-os firefoxom már, így nem tudom megnézni hogy viselkedik, de ha egy az egyben lemásoltad ezt a kódot, akkor gondolom jónak kéne lennie.
ツ Headphones on - World off
ubid
őstag
egy az egybe leszedtem mindent róla cska a belső szöeget írtam át... dehát az lényegtelen. viszont mégse fut .S
3.6 ban
-.-
ntomka
nagyúr
És a mintaoldalt nézve jól megy?
ツ Headphones on - World off
ntomka
nagyúr
Akkor valami csak nem lett jól lemásolva. Ezt behúztad?
ツ Headphones on - World off
ubid
őstag
igen teljesen ezt és csak a szövegen változtattam. de máshol fut rendesen :S
ie. mozzila 4 ... chrome...
-.-
Sk8erPeter
nagyúr
Kipróbáltam Firefox 3.6 Portable-lel, és teljesen jól működik.
Addig nem fogunk tudni neked segíteni, amíg a teljes kódodat nem látjuk, hogy mit rontasz el, ezért igazán felrakhatnád egy ingyenes tárhelyre (ajánlom pl. a Freewebet), az egész regisztrációval együtt kb. 10-15 percet venne igénybe, új júzerként is.
Sk8erPeter
ubid
őstag
A hibát megtaláltam. igazából annyi volt a hiba, hogy túl soknak találta a html kommenteket a fájlban, és ezért valahogy összeakadt , vagy nem tudom, a lényeg hogy kiszedtem a kommenteket és működik is.
köszönöm a segítséget!
-.-
Arki
tag
Pl.:
<html>
<head>
<title>01</title>
<script type="text/javascript">
function modosit()
{
var oldal=new Array();
oldal[0]="a";
oldal[1]="b";
oldal[2]="c";
oldal[3]="d";
oldal[4]="e";
oldal[5]="f";
oldal[6]="g";
oldal[7]="h";
/* oldal.length, tömb hossz a nullával is számol, ezért kivonsz egyet */
var tarolo=document.all.a1.value;
if (tarolo!=0)
{
document.all.x.value=oldal[tarolo-1];
/*
ha itt valami objektum szövegkódját/tartalmát és/vagy kívánod módosítani,
akkor pl.:
*/
document.all.xyz.innerHTML=oldal[tarolo-1];
/* ha nem kell, akkot töröld ki ezt a fenti sort meg alul az xyz-s inputot*/
document.all.a1.value=tarolo-1;
}
else
{
document.location.href='valami.html';
}
}
</script>
<body>
<!--// Ezzel növelgetsz //-->
<input type=button style="font-size:50px;" value="katt" onclick="modosit()";>
<!--// Ez a tömbök száma //-->
<input type=hidden id=a1 value="8">
<!--// Ebben jelenik meg az érték //-->
<input type=button id=x style="font-size:50px;" value="8">
<!--// tartalom módosításhoz //-->
<div id=xyz style="font-size:50px;">Kezdő szöveg....</div>
</body>
</html>?
Comodo:http://comodo.freegamespalace.org, blog: http://geza.freegamespalace.org, olcsó tár: http://secure.hostgator.com/cgi-bin/affiliates/clickthru.cgi?id=gabrielg
Sk8erPeter
nagyúr
Miért ragaszkodsz ehhez a document.all-hoz (másik topicban is ezt használtad)?
document.all.xyz
HELYETT
document.getElementById('xyz')
utóbbi a helyes.
var tarolo=document.all.a1.value;
eleve már megint ez a document.all, de mindegy, most ezt tegyük félre, de ezután ezt írod nem sokkal:
document.all.x.value=oldal[tarolo-1];
Ennek konkrétan semmi értelme, hogy a hidden input mezőbe elhelyezett értékkel indexeled a tömböt... akkor már legyen JavaScript-változóban tárolva, ha már ezt választod...
DE ha már említetted a length property-t, akkor már miért nem használod?
Pl. oldal.length
"tömb hossz a nullával is számol"
NEM, nem a nullával is számol, hanem a nulladik tömbindexen szereplő értéket is beleszámolja. Nyilván, mivel az is a tömb egyik eleme.
Az indexelés pedig 0-tól kezdődik, tehát a 0. indexen szereplő érték a tömb első eleme.
Látom épp tanulod a JavaScriptet...
Sk8erPeter
Brown ügynök
senior tag
Igazából a probléma összetett, de talán ide illik a legjobban. A fószer elkezd gépelni a keresőmezőbe, majd a 3. karakternél (és minden további billentyű leütésnél) lefut az AJAX kérés. A visszakapott adatokat kilistázza, majd ha erre rákattint berakja az <input>-ba. Illetve berakná de hibát ad vissza. Tehát az adatokkal visszatér, de már nem rakja be kattintásra az inputba.
<script type="text/javascript" src="'js/jquery-1.6.1.min.js"></script>
<script type="text/javascript" src="js/suggestion.js"></script>
Ami a suggestion.js-ben van:
function fill(thisValue) {
$('#inputString').val(thisValue);
setTimeout("$('#suggestions').hide();", 200);
}
Amivel az ajax válaszol:
$response .= '<li onclick="fill(\''.$data->getData().'\');">'.$data->getData().'</li>';
És amit webdebug visszadob amikor rákattintunk az egyik listaelemre:
Uncaught ReferenceError: fill is not defined
(anonymous function)
onclick
Ötlet?
[ Szerkesztve ]
"hacsak nem jön a jó tündér break utasítás képében..."
(#2083) Sk8erPeter válasza Brown ügynök (#2082) üzenetére
Sk8erPeter
nagyúr
Olyan nagyon nem tanulmányoztam a kódodat, de ez egyből feltűnt:
src="'js/jquery-1.6.1.min.js"
Nem tudom, látszik-e, azt akartam kiemelni, hogy a js könyvtár előtt az src attribútumban véletlenül ott maradt egy aposztróf ( ' ). Ez hibás működéshez vezethet, olykor kiszámíthatatlanokhoz, franc tudja, hátha ez, ha nem, írd meg, és akkor elgondolkodunk.
Szerk.: vagy csak rosszul másoltad be, az eredeti kódban nem ez van?
Van egyáltalán olyan függvény, ami lefut a suggestion.js-ből? Gondolom elérési út jó, stb... azt nem írtad, más JavaScript-kód fut-e rendesen, és csak ez-e a hibás.
[ Szerkesztve ]
Sk8erPeter
(#2084) Brown ügynök válasza Sk8erPeter (#2083) üzenetére
Brown ügynök
senior tag
Az benne maradt, nem az a baja.
"hacsak nem jön a jó tündér break utasítás képében..."
(#2085) Sk8erPeter válasza Brown ügynök (#2084) üzenetére
Sk8erPeter
nagyúr
Azt még mindig nem írtad meg, más JS-kód működik-e...
Akkor legalább a suggestion.js-be tegyél bele egy tesztfüggvényt, hogy csekkold, megy-e egyáltalán bármi is, és átmenetileg próba erejéig cseréld le az onclick eseményt.
function testalert(){
alert('ok, ez műxik');
}
...
$response .= '<li onclick="testalert();">'.$data->getData().'</li>';
Szintaktikai ill. egyéb hiba valahol a kódban?
Néha érdemes leellenőriztetni W3C validatorral az oldal kódját, nincsenek-e benne ordító hibák (egyes elemek felcserélése, stb.), elég durván meg tudják zavarni a JS-kódokat is, sokszor emiatt nem működik (persze csak egy lehetséges ok a sok közül), tapasztalat.
Sk8erPeter
(#2086) Brown ügynök válasza Sk8erPeter (#2085) üzenetére
Brown ügynök
senior tag
Az alert(); működik, a fill() fv.-nél van valami bibi.
"hacsak nem jön a jó tündér break utasítás képében..."
(#2087) Sk8erPeter válasza Brown ügynök (#2086) üzenetére
Sk8erPeter
nagyúr
Nem arról beszéltem, hogy simán az alert()-et rakd bele az onclick-be, hanem a FÜGGVÉNYT hívd meg ott, amit a suggestion.js-be pakoltál korábban, direkt ezért mutattam meg a tesztfüggvényt (testalert()), hogy hogy is gondolom. Legalább így tesztelni tudnád, hogy egyáltalán az ottani függvények meghívódnak-e.
De lehet, hogy azt csináltad, ezt sem írtad egyértelműen... eljátszhatjuk még ezt egy párszor, hogy én írok egy jó hosszú hsz.-t, te meg egyetlen tőmondatban válaszolsz, de valószínűleg elég sokára fogunk előrébb jutni...
Sk8erPeter
(#2088) Brown ügynök válasza Brown ügynök (#2086) üzenetére
Brown ügynök
senior tag
Pontosítok. Ha így adom meg a kódot onclick="alert();", akkor működik, ha viszont hivatkozok a fv-re onclick="egyfv();" akkor nem látja, is ua. a hibát dobja.
"hacsak nem jön a jó tündér break utasítás képében..."
(#2089) Sk8erPeter válasza Brown ügynök (#2088) üzenetére
Sk8erPeter
nagyúr
Akkor magyarul pont az nem működik, amit először mutattam neked, tehát az ezelőtti hsz.-ednél pont nem azt próbáltad ki, amit mondtam. Na ez a baj az ilyen gyorsan odavetett válaszokkal, amikor Te kérsz segítséget.
Hát akkor vagy az elérési út nem jó, vagy rossz helyen szerepel a <script> taged, vagy valami szintaktikai hiba van a suggestion.js-ben, ezt most így nem tudom megmondani, mivel egyáltalán nem látom a kódodat. Ha felpakolnád valahova, könnyebb lenne.
A kódod esetleges hibáit meg ellenőrizd a JSLint-tel, nagyon sok hibát észrevesz, amit a fejlesztő nem.
[ Szerkesztve ]
Sk8erPeter
(#2090) Brown ügynök válasza Sk8erPeter (#2089) üzenetére
Brown ügynök
senior tag
Eléréis útvonal: Mivel a suggestion.js fájl egy másik fv-e lefut ezért ez nem játszik.
Szintaktikai hiba: Valószínűleg akkor valamilyen syntax error üzenettel térne vissza és a kód többi része sem működne. Itt bizony más lesz a probléma.
A suggestion.js-ről még annyit érdemes tudni, hogy a következő kódrészlet fogja közre a fv-ket.
$(document).ready(function() {
...
)};
"hacsak nem jön a jó tündér break utasítás képében..."
(#2091) Sk8erPeter válasza Brown ügynök (#2090) üzenetére
Sk8erPeter
nagyúr
"Mivel a suggestion.js fájl egy másik fv-e lefut ezért ez nem játszik."
Akkor az előbb nem értem, mire mondtad, hogy nem fut le.
ezt írtad: "ha viszont hivatkozok a fv-re onclick="egyfv();" akkor nem látja, is ua. a hibát dobja."
"a következő kódrészlet fogja közre a fv-ket.
$(document).ready(function() {
...
)};"
Ha magáról a függvény definíciójáról beszélsz, akkor tök felesleges.
Akár még ez is lehet probléma.
Szedd ki a ready állapothoz kötésből a függvényt, az csak a definíciója a függvénynek, nem a meghívása.
Ha a li onclick eseményére kötöd, akkor már az az elem úgyis készen van. Nagy valószínűséggel a klikkelés idejére amúgy is kész a DOM.
Tehát így legyen:
function fill( yourValue ) {
// függvénydefiníció
// .......
}
$(document).ready(function() {
// ...
)};
Azt sem írtad, hova pakoltad egyáltalán a suggestion.js-t. Pl. az elem utánra raktad be a script taget, azelőttre, vagy hogyan...
Pontos leírás kéne, meg az, hogy kicsit légy nyitottabb, és csekkold le a HTML-kódodat validatorral, a JS-kódodat meg a JSLinttel.
Lehet, hogy olyan jellegű hibák is kiderülnek belőle, amikre nem gondoltál.
Most így kód nélkül tényleg csak sötétben tapogatózás az egész....
[ Szerkesztve ]
Sk8erPeter
(#2092) Brown ügynök válasza Sk8erPeter (#2091) üzenetére
Brown ügynök
senior tag
A függvény definícióját $(document).ready(function() {-on kívülre helyeztem ez megoldotta a problémát. Kösz
"hacsak nem jön a jó tündér break utasítás képében..."
(#2093) Sk8erPeter válasza Brown ügynök (#2092) üzenetére
Sk8erPeter
nagyúr
Jaja, a hsz. elküldése után már biztos voltam benne, hogy az lesz az.
Más scope-ban van így, most már elérhető a függvény.
Nincs mit.
Sk8erPeter
Arki
tag
Válaszok:
- IE alá fejlesztek (használom getElementById-t is, de ezt minden kezdő egyszerűbben megérti és több helyen tud utána nézni is /document.all vs. getElementById/);
- működik és nem volt világos, hogy mit szeretne, van lehetősége babrálni rajta.. (te írtál neki példát?);
- lesz*rom? A te magyarázatod vesésebb, nyilván felfogja... de nulladik elemmel, igen, ez korrektebb megfogalmazás.
- igen, kell még tanulnom; nem, mást meg nem irritálok lényegtelen bejegyzéssel, ha nem elvárható.
[ Szerkesztve ]
Comodo:http://comodo.freegamespalace.org, blog: http://geza.freegamespalace.org, olcsó tár: http://secure.hostgator.com/cgi-bin/affiliates/clickthru.cgi?id=gabrielg
Sk8erPeter
nagyúr
"IE alá fejlesztek"
És? IE alatt is a getElementById való arra, hogy adott id-vel rendelkező elemet lekérjünk.
Ha a Google-ös találatokat bizonyítéknak szántad, az nem jött be, mivel ahogy te kerested, idézőjelek nélkül, az minden lószart megtalál, azt is, ha egymás után szerepel szóközzel így: "document all", "document's all", stb.
Így a jó az összevetés, ha már homár:
"document.getElementById" - "Nagyjából 31 000 000 találat"
"document.all" - Nagyjából 7 940 000 találat
Csupán 23 millió körüli előny a "document.getElementById" javára.
Ha már ezzel akarunk bizonyítani... bár nem mintha ez érv lenne, sőt...
Nem mindig az a segítség, ha egy az egyben leírunk valakinek kódokat, főleg, ha fogalma sincs, miről van szó. Ettől függetlenül ha visszakeresel a topicban, elég sok konkrét kódot írtam már le emberkéknek segítségből, olyanoknak, akiknek érdemes, mert látszik, hogy valóban foglalkoztatja őket az adott probléma, és nem csak azt várják, hogy az ő beböffentésére mindenki ugráljon.
"lesz*rom?"
Akkor meg miért sértődsz meg egy kritikán?
"nem, mást meg nem irritálok lényegtelen bejegyzéssel"
Ha az én hozzászólásomra céloztál így nem túl egyenes módon: szerintem nem lényegtelen hozzászólás az, ami hibás szakmai írást kritizál vagy korrigál érdemben.
De persze van, aki nem bírja a kritikát, még akkor sem, ha hibázik. Az ember nem tudhat mindig mindent helyesen, és nem gyengeség beismerni, ha valamit esetleg más jobban tud. Ezt a tanácsot én is megfogadom, ha írok valami topicba, és korrigálják az esetleges hibáimat a hsz.-emben, nem sértődöm meg rajta.
Nem kell mindent egyből támadásnak venni.
Ja, és a legfontosabb: igen rövid és tömör választ kaphatsz itt arra, hogy miért is NE használd a document.all-t: [link]
"document.all is a proprietary Microsoft extension to the W3C-standard. (B)getElementById (/B)is standard - use that."
"document.all() is a non-standard way of accessing DOM elements. It's been deprecated from a few browsers. It gives you access to all sub elements on your document.
document.getElementById() is a standard and fully supported. Each element have a unique id on the document."
Magyarul a document.all NEM szabványos, elavult, helytelen a használata.
A document.getElementById szabványos és teljes körűen támogatott a normális böngészők által.
Tanulság:
senki ne használja a document.all-t.
Teljesen mindegy, hogy IE-re vagy más böngészőre fejleszt.
[ Szerkesztve ]
Sk8erPeter
Siriusb
veterán
jQuery-ben szeretném megoldani, hogy az aktuális oldalt nyissa meg egy új fülben úgy, hogy közben egy új css is hozzá van adva. A
window.open(window.location.pathname); paranccsal az első rész megoldható, de az oldal manipulálásának mikéntjére nem tudok rájönni, mármint arra, milyen módon érhetem el, ne az eredeti ablakban lévő head-hez adjam hozzá a fájlt, hanem az új ablakéhoz. Kösz.
Sk8erPeter
nagyúr
Én ezt JS+PHP segítségével oldanám meg.
Pont ilyenről érdeklődött valaki egy másik topicban, itt: [link].
Remélem érthető, amit ott írtam, és hasznát tudod venni.
Ha valami nem világos, kérdezz rá nyugodtan.
[ Szerkesztve ]
Sk8erPeter
Siriusb
veterán
Kösz, jó ötlet, szerintem menni fog.
Sk8erPeter
nagyúr
Nincs mit! Ha elakadtál, kérdezz.
Sk8erPeter
Arki
tag
JS pl?
<link rel="stylesheet" href="html.css" type="text/css">
<link rel="stylesheet" href="html2.css" type="text/css" DISABLED>
<link rel="stylesheet" href="html3.css" type="text/css" DISABLED>
<script language="JavaScript" type="text/JavaScript">
/* váltás HTML stílusok között */
function stilus(ez)
{
csslink=document.getElementsByTagName("link");
csslink[ez].disabled=false;
if (ez==0)
{
csslink[1].disabled=true;
csslink[2].disabled=true;
}
else if (ez==1)
{
csslink[0].disabled=true;
csslink[2].disabled=true;
}
else if(ez==2)
{
csslink[0].disabled=true;
csslink[1].disabled=true;
}
}
</script>
...
Body-ban:
Válasszon egy designt:
<select id="htmlstiluslink" onChange="stilus(form.htmlstiluslink.options[form.htmlstiluslink.selectedIndex].value);" title="Válasszon ki egy design stílust a HTML felületéhez.">
<option value="0">Kék (alap)</option>
<option value="1">Piros</option>
<option value="2">Zöld</option>
</select>
Az első, nem tiltott fáj,l kék színeket tartalmaz. Oldalon belül oldottam meg így a váltást, remélem ez is segít.
Comodo:http://comodo.freegamespalace.org, blog: http://geza.freegamespalace.org, olcsó tár: http://secure.hostgator.com/cgi-bin/affiliates/clickthru.cgi?id=gabrielg
Mai Hardverapró hirdetések
prémium kategóriában
- Medion 15,6" Intel Pentium Silver N5000, 4/8/16GB DDR4 RAM, 256GB SSD, FullHD 350Nite!, 6 hó gari
- Kiárusítás! Ducky One 2 Mini és SF billentyűzetek - Jó állapot, bolti ár töredékéért!
- Apple iMac 21.5" 4K 2017 i5"-7400 3Ghz 8G/256G SSD Radeon PRo555/2G Garancia, üzletből, 27% ÁFA
- Riwall PRO RALM 4640 SPi,40V AKKUS ÖNJÁRÓ 46CM FŰNYÍRÓ, TÖLTŐVEL 4DB 4Ah AKKUVAL ELADÓ 2ÉV GARANCIA
- Eladó hibátlan állapotú EVGA gtx 1080ti