Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
Ráadásul a hivatalos honlapon is ajánl alternatívákat egyből, idézem:
"While Thickbox had its day, it is not maintained any longer, so we recommend you use some alternatives.
colorbox
jQueryUI Dialog
fancybox
DOM window
shadowbox.js"Sk8erPeter
-
zserrbo
aktív tag
Alertet raktam az ágakba és mindig az else ág alertje iratódott ki. Így már jobb?
Azt még most se tudom hogyan lehet összehasonlítani két eredményhalmazt, azaz hogy mindkettő ugyanarra mutat-e, de így már megy:
$(document).ready(function(){
$(".leftcontent").hide();
$(".leftcontent:eq(0)").show();
$(".fo").click(function(){
if($(this).find(".leftcontent").css('display')=='none'){
$(".leftcontent").hide(500);
$(this).find(".leftcontent").show(500);
}else{
$(this).find(".leftcontent").slideToggle(500);
}
});
});[ Szerkesztve ]
-
zserrbo
aktív tag
Most vissza raktam az első kódot csak hogy megnézzem, de nemtom mit kellene néznem. Azt látom a DOM fülön, hogy az elso és a kattintott is ugyanazt a dobozt jelöli ki és a hanyadik a 0. számot tartalmazza, de hogy miért hamis az első == kattintott kiértékelése az nem derül ki számomra.
[ Szerkesztve ]
-
Sk8erPeter
nagyúr
Semmi értelme az ilyen rosszindulatú hangvételű hozzászólásoknak, egyszer sem segítettél érdemben, csak azt nyomattad neki, hogy ugyan tanulja már meg a debuggoló eszközök használatát... ha ő az alertekkel szeret rájönni a hiba okára, akkor tegye azt, de leoltástól nem fog előrébb jutni.
===
(#22) jeges: "performancia" - kérlek, ne! Létezik egy magyar szó, ami ennél sokkal szebb: teljesítmény. Ez a "performancia" nagyjából annyira értelmes szó, mint az "applikáció". (Olyan szó sincs, ha már magyarra fordítjuk, fordítsuk jól: "alkalmazás".)[ Szerkesztve ]
Sk8erPeter
-
Sk8erPeter
nagyúr
Egy kezdőnek nem olyan könnyű ráállnia ezen dolgok használatára, ezt Te is tudhatnád, nyilván Te sem voltál vérprofi, amikor elkezdtél foglalkozni a dologgal, kezdetben nyilván rengeteg kérdés merült fel benned, rengeteget gányoltál, olyan kódokat kreáltál, amiken utólag, több tapasztalat birtokában már csak nevettél, és volt olyan, amire valahogy nem akart ráállni az agyad, aztán amikor végre rájöttél a megoldásra, vagy épp rávezettek, esetleg megmondták a megoldást, olyat csaptál a homlokodra, hogy ott maradt a tenyered helye...ezeken a fázisokon szerintem minden kezdő átesik.
Néha sokkal többet ér az a segítség, amikor valaki megmutatja neki azt a lehetséges megoldást, amivel sokkal egyszerűbben megoldható az egész (szerintem én és jeges is törekedtünk erre).
Te valóban beszéltél web developer eszközökről, de nem mondtad el, egyáltalán hol találja, hogyan kellene azt használni (ha már...!), csak furcsa stílusban érzékeltetted, hogy türelmetlen vagy: "Na ne hülyéskedjünk már alertekkel 2011-ben. A te érdekedben, könyörgök nézd már meg egy web developer eszközzel." Hát ez valóban nagy segítség. Meg ez is: "Az, hogy szerinted mi hajtódik végre az ifnél az egy dolog.", stb.
Konkrét kérdésekre adtál kitérő választ, minden esetben a web developer eszközök fontosságát kihangsúlyozva, ami tényszerű igazság, de nem jutott vele előrébb.
A kérdésedre saját magad meg is adtad a választ:
"Ki olt itt le kit?"
A válaszod:
"A hangnememet jogosan lehet kritizálni, sajnos a türelem nem az erősségem "Na, de ne egymással vitatkozzunk, nem az a topic célja, csak akkor már én is elmondtam a szempontokat.
Ha már homár, többek közt a Chrome Developer Tools, a Firefox Firebug, valamint az Opera Dragonfly az, ami ajánlható JavaScript-debuggolási, HTML-manipulálási célokra, konzolra való kiíratásra, stb.
Ez általában a jobbklikkes menüből érhető el, pl. "Inspect Element" / "Elem kivizsgálása" vagy "Elem vizsgálata" menüpont alatt (vagy ehhez nagyon hasonló lesz a neve).
Itt érdemes megismerkedni a különböző fülekkel (akár a linkelt oldalakon keresztül, vagy található rengeteg ismertető is ezekhez).Sk8erPeter
-
Sk8erPeter
nagyúr
"az Operáéról sem szóltam, de hát ki használ Operát?"
Pl. én... és azt hiszem, még jópáran... Ez milyen hozzáállás már?
Fejlesztőként főleg szégyen így hozzáállni...
Statisztika w3schools szerint: [link]
Nyilván az a 2,6% teljesen elhanyagolható...Szerk.: "már rég megoldotta a segítségem alapján"
ja igen, nyilván a Te segítséged olyan mértékben hatékony volt, hogy a jövőben is mindenki problémáját meg fogja oldani.
Némi egoizmus sugárzik a hsz.-eidből, már bocsánat.
De nem akarlak téged meggyőzni semmiről, csak valahogy olyan stílust alkalmazol, amitől az embernek néha feláll a szőr a hátán.[ Szerkesztve ]
Sk8erPeter
-
Sk8erPeter
nagyúr
Ez a "disznók elé gyöngyöt" elég jó hasonlat volt jelen esetben. Hát köszi, nem egyszerű megmaradni ilyenkor a kulturált stílus keretein belül, de a legrosszabb, ha az ember lesüllyed arra a szintre, ahol legyőzhetik az ott tartózkodó emberek a rutinjukkal.
Már párszor szóltam a srácnak, így a szemében én lettem a rohadék megmondóember, ami mondjuk nem túl jó szerep, valószínűleg ez nem tetszik neki, dehát legalább meg kell próbálni terelgetni az embereket a netikett felé, hátha... Amúgy teljesen igazad van, néha nem érdemes válaszra méltatni az ilyen jellegű hsz.-eket.Sk8erPeter
-
jeges
senior tag
"Ja, és jquery-vel le tudod kérdezni a böngésződ verzióját, javaslom ennek függvényében írj két különböző kódot. Az egyik fog futni Chrome-on, a másik meg máshol"
ezt én nem javaslom, inkább egy, de mindenhol működő kódot célszerű írni, mert egy idő után követhetetlen, mi miért került bele. az ilyen böngésző-függő cuccokra a jquery is nagyon odafigyel, ha valami tényleg nem ugyanúgy működik két böngészőben, érdemes nekik bejelenteni, hátha javítják. úgy emlékszem egyébként, hogy a böngésző verzió lekérdezést ők sem ajánlgatják nagyon, vagy legalábbis nem működés vezérlésére (középtájt írják)
-
Brown ügynök
senior tag
Akkor nem az FF a hibás? Megjegyzem a Chrome-ban működött és mintha FF4-ben is működött volna, erre nem emlékszem. Most FF5 van fent.
A függvény:
Span2, span3 értékek egy korábbi fv.-ből jönnek, melyben így adom meg őket:
var span2 = document.createElement('span');
span2.id = 'partner2'+ pct +'';
var span2id = span2.id;
var span3 = document.createElement('span');
span3.id = 'partner3'+ pct +'';
var span3id = span3.id;function changePartner1(partner1, span2, span3) {
var $selected = $(partner1).val();
var $url = $('input#searchAjaxPartner2').val();
var $span2 = $(span2).attr('id');
var $span3 = $(span3).attr('id');
$.post($url, {partner1: $selected, span2: $span2, span3: $span3},
function(data){
if(data.length > 0) {
$(span2).html(data);
}
});
}[ Szerkesztve ]
"hacsak nem jön a jó tündér break utasítás képében..."
-
Speeedfire
nagyúr
Chrome alatt tesztelgetem, de pl ie alatt már ugyanebben a felbontásban is gond van.
Próbáld meg azt hogy összehúzod az ablakot mondjuk fele akkorára. Már nem lesz jó.
Valami miatt, rosszul veszi fel a css adatokat.Fotóim https://fb.com/toth.szabolcs.art || IG: http://instagram.com/_tothszabolcs_ || Weblapom http://szabolcs-toth.com
-
Brown ügynök
senior tag
Nem jelez hibát.
@Athlon64++: Nem működik. Egyébként másik fv. esetében müködik a következő szisztéma: function fillTemplate(sablon, sablonnev){
$("#template").val(sablonnev);
}@jeges: A sablon és a sablonnev a visszakapott adat, ergo a változó.
Szerk: $("#template").val(sablonnev); Ez idáig működik. Már csak azt szeretném, hogyha mégsem választ ki egy sablonnevet, a begépelt szöveg ne tűnjön el a sablonnév inputból.
[ Szerkesztve ]
"hacsak nem jön a jó tündér break utasítás képében..."
-
Speeedfire
nagyúr
De ha többször is le kell futnia?
Mondjuk van 3000 adat az adatbázisban és 50-esével tölti be az adatokat. Az lenne a jó ha az i értékét egyszerre kezelné a js és a php is.Fotóim https://fb.com/toth.szabolcs.art || IG: http://instagram.com/_tothszabolcs_ || Weblapom http://szabolcs-toth.com
-
Speeedfire
nagyúr
Közben sikerült megoldani teljesen.
$(document).ready(function() {
var i = 1;
var max = <?php echo $max; ?>;
ajaxkeres();
function ajaxkeres() {
$.ajax({
type: "POST",
url: "kuld.php",
data: "i="+i,
success: function(msg){
szam = msg;
$("#szamol").replaceWith("<span id='szamol'>"+szam+"</span>");
},
complete: function() {
if (i==max) {
$("#kesz").append('Kesz!');
}
i++;
ajaxkeres();
}
});
}
});Fotóim https://fb.com/toth.szabolcs.art || IG: http://instagram.com/_tothszabolcs_ || Weblapom http://szabolcs-toth.com
-
Speeedfire
nagyúr
Ez volt a jó megoldás. Nem kellett a var oda.
A másikra viszont nem tudok rájönni...
Itt próbálgattam őket, de nem akar egyik sem működni. Valamit nem jól csinálok...
Fotóim https://fb.com/toth.szabolcs.art || IG: http://instagram.com/_tothszabolcs_ || Weblapom http://szabolcs-toth.com
-
Speeedfire
nagyúr
-
-
D@ni88
addikt
Igazság szerint nem akarok ajaxal betölteni semmit, mivel nem értek hozzá. Még alap szinten se...
Ezért azt gondoltam hogy betöltöm valamilyen rejtett mezőbe az összes adatot, és amikor rákattintok, akkor az űrlap feltöltődne az adott rejtett mező értékével.Vagy ha mutattok egy egyszerű ajax használatot, akkor megpróbálom felfogni
-
Speeedfire
nagyúr
Fent már írtam. Alul kis képek, amikkel lehet navigálni, illetve fent is vannak kis nyilak. Pont olyasmi kellene, mint az ad-gallery, csak nem találok olyat.
Fotóim https://fb.com/toth.szabolcs.art || IG: http://instagram.com/_tothszabolcs_ || Weblapom http://szabolcs-toth.com
-
Speeedfire
nagyúr
Az, hogy sehogysem sikerül beüzemelni. Félig okés a dolog, de szét van esve teljesen a galéria része. Lehet több időt kellett volna rá szánnom, de nem jött össze...
Megnézem a másik 2-t, jónak tűnnek.Fotóim https://fb.com/toth.szabolcs.art || IG: http://instagram.com/_tothszabolcs_ || Weblapom http://szabolcs-toth.com
-
Speeedfire
nagyúr
A galleryview lett a befutó, nagyon gyorsan be lehetett lőni. Egyedül a témák beállításához nem látom a konfig részt, de lehet, hogy ezt csak css-el tudom átszabni.
Fotóim https://fb.com/toth.szabolcs.art || IG: http://instagram.com/_tothszabolcs_ || Weblapom http://szabolcs-toth.com
-
Speeedfire
nagyúr
Épp azt csináltam az előbb és úgy ment, csak mindnek kellett még egy saját id is.
$(document).ready(function(){
$('span.mailme').each(function(){
var spt = "#" + $(this).attr("id");
var at = / at /;
var dot = / dot /g;
var addr = $(spt).text().replace(at,"@").replace(dot,".");
$(spt).after('<a href="mailto:'+addr+'" title="Küldj üzenetet!">'+ addr +'</a>')
.hover(function(){window.status="Küldj üzenetet!";}, function(){window.status="";});
$(spt).remove();
});
});Más: Ha van egy fix magasságú div, akkor meglehet oldani, hogy akámilyen hosszú szöveg is van benne mindig az aljára kerüljön?
[ Szerkesztve ]
Fotóim https://fb.com/toth.szabolcs.art || IG: http://instagram.com/_tothszabolcs_ || Weblapom http://szabolcs-toth.com
-
Speeedfire
nagyúr
Nem mondod, a fene gondolta volna.
Azért írtam ide, mert azt hittem, hogy csak jquery-vel lehet megoldani. De utána esett csak le, hogy elég a fent említett dolog is.Fotóim https://fb.com/toth.szabolcs.art || IG: http://instagram.com/_tothszabolcs_ || Weblapom http://szabolcs-toth.com
-
Speeedfire
nagyúr
Igen, elvállaltam egy melót az egyik tanszékről, de nem pénzért és nem hívnak Istvánnak.
Érdekelt a dolog, ilyen összetett rendszerről meg amúgy sincsenek dokumentációk.
Maga a js jó volt, még ha nem is esztétikus, illetve lehetett volna egyszerűbb is. Szimplán máshol hibáztam, mint utólag kiderült.
Remélem ettől függetlenül mindenki megőrzi a segítőkészségét.Fotóim https://fb.com/toth.szabolcs.art || IG: http://instagram.com/_tothszabolcs_ || Weblapom http://szabolcs-toth.com
-
Brown ügynök
senior tag
Valami bibi van, mert ha kiveszem <> jeleket, akkor nem működik egyáltalán.
Még FF-ban is úgy működik ha bennhagyom pedig az aztán szigorúan veszi a js-t.$('<td>').html('Név'); <<< Ilyet pedig már többször is alkalmaztam és működött, mint ahogy most is, kivéve az első elemet.
[ Szerkesztve ]
"hacsak nem jön a jó tündér break utasítás képében..."
-
Sk8erPeter
nagyúr
"A <>-ök a selectorba minek? Egyáltalán ez így működik? Ha véletlenül működik is, szedd ki őket onnan."
Persze, hogyne működne, és önmagában nem helytelen a használata, mivel ezzel létrehozol egy DOM-elemet.
Hivatalos doksi:
Creating New Elements"[...] if the string appears to be an HTML snippet, jQuery attempts to create new DOM elements as described by the HTML. Then a jQuery object is created and returned that refers to these elements. You can perform any of the usual jQuery methods on this object:
$('<p id="test">My <em>new</em> text</p>').appendTo('body');
"
Komplikáltabb példa:
$("<div/>", {
"class": "test",
text: "Click me!",
click: function(){
$(this).toggleClass("test");
}
}).appendTo("body");Kisebb feladatokra nem feltétlenül éri meg külső template-eket használni.
Hacsak nem beépített megoldásról van szó, mint pl. ez: [link].==
(#472) Karma : há' má' megin' megelőzté'.[ Szerkesztve ]
Sk8erPeter
-
Sk8erPeter
nagyúr
Szerintem ilyen esetben egyáltalán nem felesleges, pont az általam imént mutatott példa miatt:
$("<div/>", {
"class": "test",
text: "Click me!",
click: function(){
$(this).toggleClass("test");
}
}).appendTo("body");Cél és megközelítés kérdése, de ha pl. konkrétan egy elemre szeretnél vonatkoztatni bizonyos tulajdonságokat, akkor a fentebb írt módon sokkal áttekinthetőbb, mit is csinálsz, és könnyebben is módosítható egyéb célokra, mintha mondjuk ezt írnád:
$('body').append('<div onclick="$(this).toggleClass("test");" class="test">Click me</div>');
VAGY
$('body').append('<div class="test">Click me</div>');
$('.test').click( function(){ $(this).toggleClass("test"); } );Szerintem legalábbis szétszedve egyből látszik, hogy az adott elemre vonatkoztatva mit szeretnél csinálni.
Ez a "stringbe passzírozzunk bele mindent" kicsit rondábbnak tűnik.Tulajdonképpen nem látom be, miért gondolod, hogy a fenti használat a jQuery "erőltetése", szerintem ez sokkal inkább a képességeinek a kihasználása az áttekinthető kód érdekében.
================
(#475) Brown ügynök : szívesen.
(#479) Brown ügynök : ja, ezzel egyetértek, tulajdonképpen pont én is ezt fejtettem ki fentebb.
(#478) Karma : na ja, ez is jogos. De szerintem a teljesen általános jellegű nevek helyett érdemes már a változónévben is jelezni, hogy milyen célra is lesz pontosan használva. Így más is gyorsabban átláthatja a kódot, meg Te is egyből tudod, mit is akartál vele.
[ Szerkesztve ]
Sk8erPeter
-
Sk8erPeter
nagyúr
"Ha kicsi a feladat, az átláthatóság édes mindegy."
Nem értek egyet. Miért kellene valamit összeb@szni attól még, mert röviden is megoldható? Egy feladat bármikor bővülhet is, lehet, hogy csak szép lassan terpeszkedik elég nagyra, és ha mindenféle összegányolt hányadék van benne, akkor feleslegesen nehezen követhető lesz egy idő után.Amúgy soha nincs "egyetlen jó megoldás".
Sk8erPeter
-
Brown ügynök
senior tag
-
Brown ügynök
senior tag
Ezt most jegelem, megoldom másképp. Nem értem, ha a get_upload_right fv. visszahívom miért nem vesz figyelembe semmit feltételt. Egyébként nem volt teljes a kód. A get_upload_right fv.t a __callback fv. hívja vissza / meg, ami egy ajax kérés után hívja vissza a get_upload_right-t .
[ Szerkesztve ]
"hacsak nem jön a jó tündér break utasítás képében..."
-
Speeedfire
nagyúr
Ő, ezt nem értem.
Több input formot lehet egyesével oda pakolni, majd törölni ha nem kell.------
Közben megoldottam a saját gondomat is, biztos van valami egyszerűbb megoldás rá, de nekem nem jött össze... [link]
Fotóim https://fb.com/toth.szabolcs.art || IG: http://instagram.com/_tothszabolcs_ || Weblapom http://szabolcs-toth.com
-
-
Sk8erPeter
nagyúr
Meg mondjuk az sem ártana, ha az ('#egy') és a ('#ketto') ELŐTT lenne egy dollárjel, vagy egy jQuery kulcsszó...
Érdekes, most jsFiddle-ben én sem tudok & jelet írni, csak ha máshova írom, aztán bemásolom oda...Egyébként igen, működik a dolog, csak az egy igen nagy hátránya, hogy előbb ki kell töltened mindkettőt, majd nem keyupra reagál, hanem újból bele kell kattintanod a div-be, hogy végül az "extra" megjelenjen...
Itt a "működő": [link].
Sk8erPeter
-
martonx
veterán
Nem voltam elég világos. Akkor a teljes történet.
Adott egy master-detail felület.
Master - egy jquery-s datagrid.
Detail - master megfelelő sorára kattintva ajax-al betöltődő form.
A detail változtatásait localstorage-ba mentem (.on használatával - hahó), hacsak nem nyom rá a user a mentés gombra.
És itt jön a problémám. Amikor már van a localstorage-ben adat az adott detail-hez, azzzal felül kellene írnom az ajax-ban kapott inputok értékeit.
Csakhogy ekkor nem tudom az .on()-t használni, mert azzal eseményeket lehet mappelni a dinamikus DOM elemekhez. Én viszont nem eseményt akarok, hanem egy szimpla $('#myform :input') select-orral végigmenni az inputokon, hogy a localstorage alapján felülírjam a value-jukat.
Mivel a #myform ajax-al jött létre, ezért simán selectálni nem lehet.
Nos milyen trükkel lehetne ezt megoldani?Én kérek elnézést!
-
martonx
veterán
és meg is van a megoldás. Magának a .post()-nak a futásakor kapott data-t kell manipulálni ilyen esetekben. Példa:
$.post(url, { params }, function (data) {
var $input = $(data).find(":input[type=text]");
$input.each(function (elem) {
//kód jöhet ide
});
$("#detail").html(data);
});Hátha megkímélek másokat némi szívástól, guglizástól ezzel a megoldással .
Én kérek elnézést!
-
martonx
veterán
hopsz, a fenti példa nem volt tökéletes. Ez a jól működő megoldás, mert előbb hozzá kell adni a DOM-hoz a data-t. Az előző kódom akkor lett volna jó, ha csak replaceltem volna valami szöveget a data-ban.
$.post(url, { params }, function (data) {
$("#detail").html(data);
$('form :input').each(function () {
//ide jöhet a manipuláló kód
});
});A trükk az, hogy $('form :input').each(function () { //ide jöhet a manipuláló kód }); csak és kizárólag az ajax callback-jén belül működik. Azon kívül a dinamikusan hozzáadott DOM elemek már nem elérhetőek selector-okkal.
Ily módon a .on()-is kiváltható pl. azzal, ha az eseményt rögtön a callback-ben hozzáadjuk a dinamikus elemekhezÉn kérek elnézést!