- Xiaomi 13T és 13T Pro - nincs tétlenkedés
- 200 megapixeles zoomkamerát sem kap az S26 Ultra?
- Apple iPhone 16 Pro - rutinvizsga
- Realme GT 2 Pro - papírforma
- Prohardver app (nem hivatalos)
- Nothing Phone (2) - több, mint elsőre látszik
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Átlépi végre az iPhone az 5000 mAh-t?
- Nem növel telepméretet a Galaxy S26 Ultra
- Motorola Edge 60 és Edge 60 Pro - és a vas?
Új hozzászólás Aktív témák
-
DNReNTi
őstag
válasz
Speeedfire #3134 üzenetére
Érteni értem, csak nem tudom, ez hogy fogja levenni/rátenni a disabled attribútumot a submit-ra.
-
Sk8erPeter
nagyúr
válasz
Speeedfire #3114 üzenetére
"Kicsit kesze megoldás, de raktam egy trigger-t a val() után."
Szerintem semmi gond nincs ezzel, hogy ilyen esetben manuálisan váltod ki az eseményt, sokkal értelmesebb megoldás, mint időzítve figyelgetni az inputmező értékének változásait, az ilyen időzítős megoldás mindig megbízhatatlan (eleve kitalálni, hogy mennyi is legyen ez az érték, és miért pont annyi), plusz még folyamatosan erőforrást is igényel.
Tehát az általad alkalmazott megoldás a programmatikus beszúrások detektáltatására teljesen jó. -
Zedz
addikt
válasz
Speeedfire #3118 üzenetére
Jajj, nem voltam elég figyelmes.
-
Zedz
addikt
válasz
Speeedfire #3116 üzenetére
Ha már okés, akkor oszd meg velünk a megoldásod.
-
DNReNTi
őstag
válasz
Speeedfire #3114 üzenetére
De amúgy most pontosan mit szeretnél figyelni?
Az még nekem nem tiszta.
-
DNReNTi
őstag
válasz
Speeedfire #3112 üzenetére
keyup() ?
-
martonx
veterán
válasz
Speeedfire #3098 üzenetére
Félreértetted. Ez annyit csinál, mint amit sk8erpeter mondott, azaz oldalon belüli navigációt figyeli, plusz a böngésző előre, hátra gombjait, historyban ugrálást.
Azt hogy a user fogja és beír xy.hu-t a böngészőbe, és elugrik oda, azt sehogy nem fogod tudni kideríteni. Csúnya is lenne. -
Sk8erPeter
nagyúr
válasz
Speeedfire #3100 üzenetére
"Azért nem teljesen így van, mert a fenti kódrészbe a var url-hez ezt beilleszted, akkor van amikor feldobja a következő oldal címét. Viszont nem jöttem rá, hogy mi alapján. [...]
e.target.activeElement.href"
Na ne már.Ez nyilvánvalóan akkor fog létezni, amikor a felhasználó egy linkre kattintott. Nem egy nagy mágia megfejteni, például a href-ből már lehet következtetni...
Szóval de, teljesen úgy van, ahogy írtam. Ha nem linkre kattint, vagy nem valamelyik oldalon belüli elem kiválasztásával/kijelölésével/kattintásával/... kerül másik oldalra, hanem úgy hagyja el az oldalt, hogy mondjuk bepötyögi a címsorba a kívánt URL-t (vagy mondjuk rákattint valamelyik elmentett könyvjelzőre), akkor nem fogod tudni kideríteni, hogy hova is akar távozni.Ha csak a linkek céljára való kattintást kell figyelni, akkor az elég egyszerű. Vagy úgy, hogy készítesz egy event handlert, vagy például külső URL-ek esetén azt a megoldást választod, amit dqdb az előbb leírt.
-
dqdb
nagyúr
válasz
Speeedfire #3100 üzenetére
Ha saját oldalon kell megoldani, és csak a linkekre kattintva kell működnie, akkor az egyik legegyszerűbb megoldás, ha a kifelé mutató direkt linkeket olyan sajátokra cseréled, amelyek átirányítják a felhasználót a megfelelő helyre, miközben te tudod regisztrálni a választott célt. Így működik többek között az Index főoldala is, például a legelső hír linkje a főoldalon most ez, amiből átirányítás után ez lesz.
-
Sk8erPeter
nagyúr
válasz
Speeedfire #3098 üzenetére
Annak az oldalnak a címét, ahova a felhasználó épp navigálni készül, tudtommal nem tudod kideríteni kliensoldali kóddal ilyen módon, ha belegondolsz, komoly biztonsági kockázat lenne, túl sok személyes információ is kikerülhetne (például ha a saját oldaladról elnavigál a YouP×rnra, azt nem biztos, hogy a felhasználó akarja, hogy tudd
).
Tehát az egyetlen működő megközelítés, ha saját oldalon belüli linkekről/kiválasztható elemekről/... van szó, hogy az azokra való kattintás/kiválasztás/... eseményt figyeled. Ha mondjuk a felhasználó egy böngészőbe elmentett könyvjelzőre kattintva navigál oda, vagy konkrétan bepötyögi a címsorba a célURL-t (ami nem kizárt), akkor persze nem fogod megtudni, hogy saját oldalon belülre navigált, úgy, hogy akár előtte is saját oldal valamelyik menüpontjában volt (ilyenkor elvileg a referer sem tartalmazza, hiszen nem oldalon belüli hivatkozásra kattintva jutott el a másik oldalra). -
martonx
veterán
válasz
Speeedfire #3096 üzenetére
Inkább a HTML5-ös History API-val kellene próbálkoznod. [link]
-
Sk8erPeter
nagyúr
válasz
Speeedfire #3058 üzenetére
Nincs mit!
-
Sk8erPeter
nagyúr
válasz
Speeedfire #3056 üzenetére
"Nem úgy van, hogy a simpla tag-ekhez (pl: input), attributumokhoz van a text és a dupla elemekhez(p,div stb) pedig a html?"
Attribútumokhoz? Azokhoz biztos nem, arra az .attr() való.Amúgy meg nincs ilyen jellegű szabály, amire utalsz, a .text() egyszerűen szöveges tartalmat szúr be, a .html() pedig HTML-t - értelemszerűen. Próbáld ki például ezt: $('p').text('<strong>blablabla</strong>'); Magát a teljes szöveget fogod látni a bekezdés(ek)ben, nem kerül átalakításra a "blablabla" szöveg kiemelt szöveggé (értsd: látni fogod a <strong> taget).
Visszatérve a textarea vs. .text()-re: ez vicces, mielőtt írtam volna, direkt kipróbáltam, és működik textarea-hoz a .text() metódus, ennek ellenére a doksi ezt írja:
"The .text() method cannot be used on form inputs or scripts. To set or get the text value of input or textarea elements, use the .val() method. To get the value of a script element, use the .html() method."
Szóval elvileg a .val() segítségével történő beállítás a helyes textarea-hoz is. Mondjuk lehet, hogy úgy érti, hogy a .text() nem használható pl. textarea-hoz, hogy bizonyos böngészőkben nem működik...Ezt azért odaírhatták volna.
Mindenesetre a .text() textareánál működik FF 32.0.3-ban, IE11-ben, Chrome 38.0.2125.101 m alatt, szóval az aktuális böngészők mindegyikében...Na mindegy, a lényeg, hogy végül is az eredeti állítás stimmel, hogy a .html() metódust nem érdemes használni textarea-ra, arra inkább a .val() való (bár a .text() is jó a gyakorlatban
).
-
Sk8erPeter
nagyúr
válasz
Speeedfire #3054 üzenetére
Bár a központi téma szempontjából nem releváns, jelen esetben a .text() metódushívás jobb lehet, mint a .html(), mert utóbbinál egy esetedben tök felesleges (textarea-ba raksz be sima szöveges tartalmat) reguláris kifejezéssel történő cserét is lefuttat(na, ha lenne illeszkedés, de az illeszkedést ugye vizsgálni kell): http://james.padolsey.com/jquery/#v=2.0.3&fn=jQuery.fn.html
ezzel szemben:
http://james.padolsey.com/jquery/#v=2.0.3&fn=jQuery.fn.text
http://james.padolsey.com/jquery/#v=2.0.3&fn=jQuery.textNéha érdemes lehet ilyen különbségeket is figyelembe venni (még ha eleve jQuery használatánál nem is divat sajnos az erőforrásbeli különbségekre figyelni).
-
Speeedfire
félisten
válasz
Speeedfire #3053 üzenetére
Konkrét megoldást nem találtam rá, viszont a callback funkció talán jobb rá, mint paraméterben átadni a selector-t. [link]
-
Speeedfire
félisten
válasz
Speeedfire #3033 üzenetére
Bamm, lehet hogy teljesen rossz volt a jquery és az apache vonal is. Ahogy nézem, akik hasonló cipőben jártak ott a php session_write_close() volt a megoldás. Viszont akkor nem értem, hogy működik másnál aki szintén php-t használ session-ökkel.
-
Jim-Y
veterán
válasz
Speeedfire #3031 üzenetére
Tadaam, példa: [link]
-
Sk8erPeter
nagyúr
válasz
Speeedfire #3009 üzenetére
Több információ kéne. Azt írtad, "Azt hittem az apache lehet a ludas, de minden kérésnél ott van, hogy pending." Hol van, hogy pending? Hol nézed? Webfejlesztő panelban, vagy csak a UI-on?
Mit csinál az előző hsz.-edben írt ModalDialog()? Nem azt csinálja, hogy blokkolja a UI-t, pont, mint a BlockUI?, amitől valójában elvileg mehetne több AJAX-kérés is a háttérben, csak a UI nem használható, hogy a felhasználó ne tudjon ide-oda kattintgatni?
Webfejlesztő eszközből derült ki, hogy "nem tudok egyszerre több ajax kérést intézni a szerver felé"? Hogyan vizsgálódtál?
Ezeket magunktól sajnos tényleg nem tudjuk kitalálni. -
Jim-Y
veterán
válasz
Speeedfire #3028 üzenetére
Szerintem sokat segítene, ha csinálnál belőle példát jsfiddle-re. A BE kérérseket is tudod mockolni, így tudod majd demózni a nem jól működő ajax kéréseket. Hátha közben meg is lesz a hiba...
Ahhoz, hogy tudd mockolni az ajax kéréseket, external resource-nak meg kell adni a mockjax-ot.
http://cdnjs.com/libraries/jquery-mockjax
A kód elején pedig mockolod a kéréseket:
https://github.com/appendto/jquery-mockjax
Kb így (nem az a lényeg, hogy mit adsz vissza úgy sem, hanem, hogy nem megy aszinkron. Ha jól értem a problémát...)
$.mockjax({
url: '/restful/fortune',
responseTime: 750,
responseText: {
status: 'success',
fortune: 'Are you a turtle?'
}
});Működő példát is tudnék mutatni, de elhalálozott momentán a jsfiddle :/
-
Karma
félisten
válasz
Speeedfire #3007 üzenetére
És hol/hogyan dolgozod fel az AJAX hívás eredményét? Mintha nem lenne callbacked a $.ajax({url: baseurl+'/site/ajaxtest'})-re kötve.
Ez elég rosszat sejtet, például hogy a visszakapott promise objektumot szinkron bevárod...
-
martonx
veterán
válasz
Speeedfire #3005 üzenetére
Nincs varázsgömbünk, de az 100% hogy nálad a js kódban lesz a hiba.
-
martonx
veterán
válasz
Speeedfire #2957 üzenetére
Hát ez elég csúnya volt, de annyira minimális volt javítani, és éppen nagyon ráértem, hogy tessék: link
-
Jim-Y
veterán
válasz
Speeedfire #2783 üzenetére
-
Sk8erPeter
nagyúr
válasz
Speeedfire #2627 üzenetére
Attól még az továbbra sem tömb, amit mutattál...
olvasnivaló:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array -
fordfairlane
veterán
válasz
Speeedfire #2621 üzenetére
Lehet, bár ez a példádban nem tömb, hanem object literal, vagy hashmap.
-
Polesz
addikt
válasz
Speeedfire #2581 üzenetére
Köszönöm a válaszokat, tudtam hogy triviális dolgot fogok elrontani. De a közösség ereje!
-
Sk8erPeter
nagyúr
válasz
Speeedfire #2575 üzenetére
-
Sk8erPeter
nagyúr
válasz
Speeedfire #2571 üzenetére
"Elég egy helyen megírni a scriptet és behúzni a html-be."
Az ilyen szétdarabolásokkal a gond az, hogy rettenet testreszabni, és pont, hogy az átláthatóság rovására megy. Továbbra sem értem, hogy miért nem darabolod fel külön fájlokra feladatoktól függően (így adott feladatot adott fájlban lehetne módosítani, tehát kvázi moduláris felépítésű lenne, ami aztán nem egy nagy was ist das), és húzod be szépen a szokásos, src attribútummal ellátott script taggel, netán készítesz plugineket, és még bőven sorolhatnám. Ezek egy csöppet sem teszik átláthatatlanná a projektet, sőt, nagyon is követhetővé teszik, akár több személy számára is.
Ha viszont mondjuk készítesz külön egy iframe-es cuccot, aztán már két év múlva gondolkodni kell, hogy ez itt mit is csinál, vagy épp totál át kell alakítani a kinézetét, aminek az iframe-es megoldás nagyon is korlátokat szab, akkor gondban leszel.
Tájékoztatásként mondom, hogy a callback függvény nem azt jelenti ám, hogy muszáj ott helyben, anonim függvénnyel megoldani a dolgokat, ömlesztve, hanem nyugodtan kirakhatod az egészet egy névvel ellátott függvénybe, és csak megadod a "függvénypointert"...
(hogy mire gondolok:
var tokmindegy = {
...
valami: fuggveny,
...
};
function fuggveny() { .... }
gondolom érthető...)"Ami kisebb, egyszerűbb és nem komplex feladat, oda jó. De ahol komplexebb megoldás kell, ott már szívás és macera van vele, amivel csak magamat szívatnám ezzel"
Szóval a sok-sok fenti érvelés miatt ez úgy, ahogy van, nem igaz.De tényleg nem foglak már tovább győzködni erről, úgy csinálod, ahogy akarod, kicsit így is túl sok energiát öltem a meggyőzésedbe, bár sajnos eredményt nem értem el, pedig optimistán álltam a dologhoz.
-
Sk8erPeter
nagyúr
válasz
Speeedfire #2569 üzenetére
"Mindenesetre most így marad.
"
Mármint úgy, hogy nem működik?Amúgy leírhatod, hol akadtál el, miért találod átláthatatlanabbnak, vagy épp az iframe-es módszert hogyan lehetséges átláthatóbbra írni szerinted, mert már furdalja az oldalamat a kíváncsiság.
-
Sk8erPeter
nagyúr
válasz
Speeedfire #2567 üzenetére
Megdöbbentő dolgokat írsz, de nem erőlködöm, hogy meggyőzzelek.
-
Sk8erPeter
nagyúr
válasz
Speeedfire #2565 üzenetére
Hogy lehetne már átláthatatlanabb, mint a rettenetesen ronda és kényszeredett, nyakatekert, eszközhiányos, tökönrúgott, kezelhetetlen, nehézkes iframe-es szenvedés, amivel fentebb próbálkoztál?
Hidd el, ha az átláthatatlan, amikor egy eszköznek tisztességes módon a nem túl bonyolult API-ját használod, és jobbnak találod valami nagyon overkill és csúnya iframe-es módszerrel megoldani feleslegesen a dolgot, akkor a kódoddal van valami nagy baj, nem pedig a rendelkezésedre álló eszközökkel. Nem beszélve arról, hogy láthattad, mennyi - egyébként kikerülhető - szenvedést visz a feladatodba, ha ezt választod, ami meg rengeteg időt is vesz igénybe, az idő meg pénz, így jó sok pénzt és energiát is vesztesz vele, csak nem veszed észre. Az átláthatatlanság mellett egyébként ilyen vonatkozásban nehéz érveket találni.
A Te érdekedben mondom ezeket, de ahogy érzed, nyilván úgy oldod meg, ahogy akarod, csak ne csodálkozz, ha aztán később rájössz, hogy mégsem volt jó, hogy így közelítetted meg a kérdést (amikor az iframe-mel kapcsolatos korlátokba ütközöl). De hogyan asszisztálhatnánk mi ehhez jó szívvel? -
Sk8erPeter
nagyúr
válasz
Speeedfire #2563 üzenetére
Ez már nekem magas, hogy mi az idegesítő abban, hogy sokkal egyszerűbben megoldasz egy feladatot a megfelelő eszközzel. -
Sk8erPeter
nagyúr
válasz
Speeedfire #2561 üzenetére
Akkor végképp nem értem. Ha jól értem, amit írsz, a táblázat fancyboxban pattan elő, ami nem szükségszerűen iframe, tudtommal fancyboxszal is fel lehet legalábbis pattintani inline tartalmat, ergo tökéletesen elegendő lenne ugyazon dokumentumon belül lekezelni mindkettőt, ráadásul az API-ban vannak olyan eventek is, amikkel meg lehet határozni, mi történjen mondjuk a fancybox felpattanásakor, bezárásakor, stb...
onStart null Will be called right before attempting to load the content
onCancel null Will be called after loading is canceled
onComplete null Will be called once the content is displayed
onCleanup null Will be called just before closing
onClosed null Will be called once FancyBox is closedEzekkel nyugodtan játszhatnál, végül is erre jók az ilyen event handlerek...
-
Sk8erPeter
nagyúr
válasz
Speeedfire #2559 üzenetére
A táblázat megjelenítése a fancybox segítségével kattintásra történik? Mert akkor a fancybox-nyitó utasítással egyben lehetne egy click eseményre reagálás is, az event handlert pedig a mutatott módon állítanád be - igaz, kezd az egész nagyon gányolós lenni. Muszáj egyébként iframe-mel megoldani az egészet? Mi az oka, hogy ilyen megoldáshoz folyamodsz? Valószínűleg lehetne helyette egy sokkal jobb megoldást találni, hacsak nincs valamiért megkötve a kezed, amiért muszáj iframe-et használnod.
-
Sk8erPeter
nagyúr
válasz
Speeedfire #2555 üzenetére
Ezt a példát gyorsan átpötyörészve, egy nagyon egyszerű példa click event figyelésére iframe-en belül:
http://jsfiddle.net/Sk8erPeter/a7r9L/226/
Erre gondoltál?
-
fordfairlane
veterán
válasz
Speeedfire #2553 üzenetére
Ez a példa totál nem jó. Nézz már meg valami tutorialt az iframe használatáról.
-
martonx
veterán
válasz
Speeedfire #2551 üzenetére
iframe-mel is lehet használni a jquery-t, javascriptet, csak picivel macerásabb.
Kérdés, hogy az iframe-ből kifelé akarsz nyúlni, vagy kintről akarsz befelé nyúlni?
Gugli lesz a barátod, most lusta vagyok helyetted példát keresni. -
Karma
félisten
válasz
Speeedfire #2551 üzenetére
Hát, az biztos, hogy a példa így nem fog működni - ha oda írod a tartalmat az azt jelenti, hogy "ha a böngésző nem támogatja az iframe-eket, jelenjen ez meg helyette".
Mivel az iframe önálló HTML dokumentum, (szinte) teljesen független DOM-mal, miért nem include-olod be ott is a jQuery-t?
Bár a privát véleményem az, hogy az "értelmes" megoldások ettől elég messze állnak. Már a felvetésnél elvérzett a józan ész.
-
martonx
veterán
válasz
Speeedfire #2515 üzenetére
Trisztan94 eddigi munkásságát tekintve nem kell hozzá nagy jövőbelátás
-
Sk8erPeter
nagyúr
válasz
Speeedfire #2513 üzenetére
Ami késik, nem múlik.
-
trisztan94
őstag
válasz
Speeedfire #2484 üzenetére
Észben tartom! Köszönöm
-
trisztan94
őstag
válasz
Speeedfire #2482 üzenetére
Sokkal szebb, koszonom!
En ezektol a tag-ekrol nem hallottam meg (thread, tbody).. Html5-osok?
-
Speeedfire
félisten
válasz
Speeedfire #2478 üzenetére
Mégiscsak sikerült működésre bírni, viszont érdekes mód nem találok funkciót az adatok módosítására. Ajax-al jó lenne pedig frissíteni, ha lapozza valaki a naptárt.
-
Jim-Y
veterán
válasz
Speeedfire #2476 üzenetére
var tomb = [];
// helytelen
//tomb[id] = 2;
//tomb[language][hu] = "Keresési feltételek";
//tomb[language][en] = "Search";
// helyes
var Message = {}; // mint object
Message['id'] = 2;
Message['lang'] = [];
Message['lang']['hu'] = "aaa";
Message['lang']['en'] = "search";
var messageTomb = []; // mint tomb
messageTomb['id'] = 2;
messageTomb['lang'] = [];
messageTomb['lang']['hu'] = "Keresési feltételek";
console.log(messageTomb['lang']['hu']); // Keresési feltételek
// vagy
function messageObj(id, langhu, langen) {
this.id = id;
this.language = {
hu: langhu,
en: langen
}
}
var mess1 = new messageObj(1,"Keresési feltételek","Search");
var mess2 = new messageObj(2,"asd","asdEN");
console.log(Message); //{id:2, lang:[]}
console.log(mess1['id']); // 1
console.log(mess1['language']['hu']); // "Keresési feltételek" -
vincent001
csendes tag
válasz
Speeedfire #2468 üzenetére
Szia,
Köszi nagyon jó mert már működik a fancybox de az oldal elvesztette a reszponzív tulajdonságot.
Így néz ki most a head részem:
<!DOCTYPE html>
<html dir="ltr" lang="en-US"><head><!-- Created by Artisteer v4.0.0.58833 -->
<meta charset="utf-8">
<title>Photos</title>
<meta name="viewport" content="initial-scale = 1.0, maximum-scale = 1.0, user-scalable = no, width = device-width"><!--[if lt IE 9]><script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script><![endif]-->
<link rel="stylesheet" href="style.css" media="screen">
<!--[if lte IE 7]><link rel="stylesheet" href="style.ie7.css" media="screen" /><![endif]-->
<link rel="stylesheet" href="style.responsive.css" media="all">
<link rel="stylesheet" href="jquery.fancybox.css?v=2.1.5" type="text/css" media="screen" />
<link rel="stylesheet" href="helpers/jquery.fancybox-buttons.css?v=1.0.5" type="text/css" media="screen" />
<link rel="stylesheet" href="helpers/jquery.fancybox-thumbs.css?v=1.0.7" type="text/css" media="screen" />
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="script.js"></script><script type="text/javascript" src="jquery.fancybox.pack.js?v=2.1.5"></script>
<script type="text/javascript" src="helpers/jquery.fancybox-buttons.js?v=1.0.5"></script>
<script type="text/javascript" src="helpers/jquery.fancybox-media.js?v=1.0.6"></script>
<script type="text/javascript" src="helpers/jquery.fancybox-thumbs.js?v=1.0.7"></script>
<script>
$(document).ready(function(){
$(".fancybox").fancybox({
openEffect : 'none',
closeEffect : 'none'
});
});
</script><style>.art-content .art-postcontent-0 .layout-item-0 { padding-right: 10px;padding-left: 10px; }
.ie7 .post .layout-cell {border:none !important; padding:0 !important; }
.ie6 .post .layout-cell {border:none !important; padding:0 !important; }
</style> -
vincent001
csendes tag
válasz
Speeedfire #2462 üzenetére
Szia,
bemásoltam ezt a sort: <script src="script.responsive.js"></script> de nem változott semmit? Ugyan úgy nem működik.Üdv
-
Sk8erPeter
nagyúr
válasz
Speeedfire #2425 üzenetére
'#teszt:not(".neee")'
Gyors magyarázat: ezzel a szülődivre vonatkozó kritériumot adtál meg, tehát olyan #teszt elemet keresel, ami nincs "neee" class-szel ellátva. Ergo ez arra az esetre nem fog működni, amit te szeretnél.
Ha a szülőelem figyelése a feladat, akkor olyasmi a megoldás, mint amit Jim-Y javasolt. -
martonx
veterán
válasz
Speeedfire #2417 üzenetére
Ugyan ez egy jquery topik, mi pedig CSS-ezünk, de ezt a selectort próbáld ki: "div:not(.neee)"
Elsőre félreértettelek, hogy pontosan mit is szeretnél, ez a css selector még sokkal egyszerűbb is, mint az előző volt. -
Jim-Y
veterán
válasz
Speeedfire #2408 üzenetére
Nagyon kellett sietnem így csak addig csináltam amig azt az eredményt kaptam amit vártam, bocs ha vmi hiba van benne, 1h mulva átnézem, de addig lesd meg: http://jsfiddle.net/Jim_Y/bjxDL/3/
-
Sk8erPeter
nagyúr
válasz
Speeedfire #2319 üzenetére
Nekem nagyon is tiszta volt, mit szeretnél. De azért linkeltem a tutorialokat, mert onnan simán ki lehet hámozni azt, amit szeretnél...
Most volt egy kis időm, megnéztem ezt az oldalt:
http://knockoutjs.com/examples/grid.htmlitt belinkelnek egy jsFiddle-példát:
http://jsfiddle.net/rniemeyer/QSRBR/na én ezt minimális átalakítással megcsináltam úgy, ahogy szeretnéd, tároltam egy változóba az objektumot, és így máris tudtam használni pl. az általam még odabiggyesztett addMyItem() metódust:
http://jsfiddle.net/QSRBR/3273/
nézd meg a kettő közti különbséget
Remélem, így már tiszta. -
Sk8erPeter
nagyúr
válasz
Speeedfire #2313 üzenetére
Sztem ezt kukkantsd meg többek közt:
http://knockoutjs.com/documentation/json-data.html
http://knockoutjs.com/documentation/plugins-mapping.htmlDe hát bakker, most nézem, ott van a példa az AJAX-os frissítésre a tutorialban is
http://learn.knockoutjs.com/#/?tutorial=loadingsaving
há' nézz má' körűűűűűű!
-
Sk8erPeter
nagyúr
válasz
Speeedfire #2310 üzenetére
Igazad van, viszont most gyorsan megnéztem a tutorialokat:
http://learn.knockoutjs.com/#/?tutorial=collectionsitt a "Tutorial: Working with Lists and Collections" leckét válaszd ki, és itt már a második lépésben mutat egy módszert rá, amivel halál egyszerűen lehet frissíteni a listát. Még magyarázatot is ír rá. Ha nem jön össze, pakold fel a próbát jsFiddle-re.
-
Sk8erPeter
nagyúr
válasz
Speeedfire #2299 üzenetére
Hogy érted? Ott van a demo az oldalon, itt most szemléltetésként átírtam annyival, hogy 1 mp-es késleltetéssel (mintha kábé AJAX-kommunikáció történne) dobok egy alert()-et, aztán lecserélem a teljes listát (["Alpha", "Beta", "Gamma") az új adatokkal ("Egy", "Kettő", "Három"):
http://jsfiddle.net/bxfXd/2228/
Nem ilyet szeretnél? -
martonx
veterán
válasz
Speeedfire #2216 üzenetére
Azért olvasd már el a GPL3-at
Nem hiszem, hogy te az open source közösségnek csinálod a weboldalakat, és minden forráskódodat tolsz ki publikusan mondjuk a github-ra... -
martonx
veterán
válasz
Speeedfire #2211 üzenetére
jqgrid, jqwgrid, datatables hogy hirtelen soroljak párat.
Kendo UI gridje a legjobb, de figyelem az keményen fizetős cucc!!!
jqgrid rengeteget tud, de nagyon fos a layout-ja
jqwgrid jól néz ki, könnyen skinezhető, ingyenes is lehet, de a tudása, API-ja egy kicsit kevéske. Ettől függetlenül én jelenleg ezt használom többfelé is, mert egy elég jó kompromisszum. Egy böszem nagy állat, a komplett jqwidget js file minimalizálva 1.4 Mb, de ez intraneten nem gond
datatables a legfapadosabb mind közül, cserébe nagyon könnyűsúlyú, és jól testre szabhatóm kinézetilag is agyonformázható.Szvsz szégyen, hogy nincs egy normális kvázi szabvány grid a jquery UI-ban.
-
Sk8erPeter
nagyúr
válasz
Speeedfire #2211 üzenetére
Miért, ezzel mi a gond? Nekem bejövős, megnéztem a code sample-öket, elég jónak tűnik.
(#2210) ahetaton : szívesen.
-
Karma
félisten
válasz
Speeedfire #2205 üzenetére
Nincs IE9 XP-re. Ha meg valaki rá is hákolja, azt egy nagyvállalat IT-jén nem nyomod át.
-
Sk8erPeter
nagyúr
válasz
Speeedfire #2176 üzenetére
Még annyi, hogy természetesen a callback függvényeket definiálhatod globálisan elérhető függvényekként is, és akkor a paraméterezésnél pedig csak magát a függvénypointert adod át:
http://jsfiddle.net/MjsVM/3/Hátha így egyszerűbb lesz.
A kódban nézd meg a saveMyShit és dropMyShit függvényeket. -
Sk8erPeter
nagyúr
válasz
Speeedfire #2174 üzenetére
És a callback függvényekbe pakolás miért nem jó? Kb. ugyanolyan, mintha lenne egy if-else-ed, csak mégsem, hanem csupán más-más függvény hívódik meg...
Az általában megszokott logika némi módosításra szorul, de nem túl nehéz átültetni másféleképpen.
De ha nem tiszta, hogyan, akkor konkretizáld. -
Sk8erPeter
nagyúr
válasz
Speeedfire #2172 üzenetére
Hát nem csoda, mivel ez így rossz.
így már jó lesz:
http://jsfiddle.net/MjsVM/1/ -
Sk8erPeter
nagyúr
válasz
Speeedfire #2170 üzenetére
rakd má' fel jsfiddle-re plíz
-
Sk8erPeter
nagyúr
válasz
Speeedfire #2168 üzenetére
elég régóta lehet (amúgy gondolom 1.10.3-at akartál írni)
-
martonx
veterán
válasz
Speeedfire #2120 üzenetére
A kettő marhára nem zárja ki egymást, sőt.
Full ajax oldalnál a legbiztosabb, ha minden .on-t a document-re kötsz.
Másik megközelítés, hogy minden ajax hívás success-ében hozod létre az oda való esemény kezelőket. De ez szvsz egy idő után átláthatatlanná teszi az oldalt.
A full ajax oldalt egyébként single page appilcation-nek hívják. Ha így keresel rá gugliban akkor sok hasznos infót, design patternt lehet hozzájuk találni. -
Coyot
őstag
válasz
Speeedfire #2118 üzenetére
Knockout.js? Az egy marha jó kis cucc, kezdem megszeretni nagyon
-
Sk8erPeter
nagyúr
válasz
Speeedfire #2107 üzenetére
Esetleg megpróbálhatod az .ajaxSuccess()-szel globálisan lekezelni az eseményt, úgy, hogy itt inicializálod a tooltipet, esetleg némi késleltetéssel, ha szükséges.
-
Jim-Y
veterán
válasz
Speeedfire #2103 üzenetére
mint ahogy martonx is írta, a korábbi kódomban pont ez szerepel [link]. A page classú tagek ajaxxal lettek hozzáadva, és azokra még egy .on lett aggatva, de ennek az ajaxon belül kell lennie. Csak ebben a kódban ki lett delegálva a törzs egy függvénybe
Amikor írtam a kódot én is kipróbáltam függvényen kívül, de úgy nem történt semmi.
-
martonx
veterán
válasz
Speeedfire #2103 üzenetére
Az ajax success metódusába tedd bele a tooltip beállítást.
-
Jim-Y
veterán
válasz
Speeedfire #2101 üzenetére
És mi nem megy tulajdonképpen?!
-
Jim-Y
veterán
válasz
Speeedfire #2099 üzenetére
Mi az a content?
-
Sk8erPeter
nagyúr
válasz
Speeedfire #2092 üzenetére
"Hogyan tudok object névben változót használni?"
Mi az az "object név"?Ilyenről most hallok először.
var ch_id = $(this).attr('ch_id');
var ch_limit = $(this).attr('ch_limit');
var post_ch_id = "CampaignChannels["+index+"][CHANNELS_ID]";
var post_ch_limit = "CampaignChannels["+index+"][CHANNELS_LIMIT]";
var post_channels = {post_ch_id : ch_id, post_ch_limit : ch_limit};Ebben a kódodban igazából a post_ch_id és post_ch_limit változókat egyáltalán nem is használtad fel.
Ami ebben az esetben működne, csak nagyon ronda:
var post_channels = {post_ch_id : post_ch_id, post_ch_limit : post_ch_limit}; -
Jim-Y
veterán
válasz
Speeedfire #2092 üzenetére
Ellenőrizd, hogy channels tömb tagjai (objectek) ne tartamazzanak `nem stringet`
Például:
var channels = [{one: 1, two: 2, three: 3},{egy: "egy", ketto: "ketto", harom: "harom"}];
var str = $.param(channels[0]);
console.log(str); //undefinedde,
var channels = [{one: "1", two: "2", three: "3"},{egy: "egy", ketto: "ketto", harom: "harom"}];
var str = $.param(channels[0]);
console.log(str); //one=1&two=2&three=3Mondjuk, szerintem a te adataid automatikusan stringgé kéne, hogy kovertálódjanak, szoval lehet nem ez a baj, de egy tippnek elment
-
martonx
veterán
válasz
Speeedfire #2018 üzenetére
Én is mindent json-ban tolok ki. Viszont nagyon nem mindegy, hogy egy pár ezer soros json-ban adatokhoz csak kódokat küldesz ki, plusz a kódok feloldását, ahol mondjuk szintén ezres nagyságrendű kód - érték párt kiküldesz. Ezután soronként kell megkeresned minden egyes adatnak a kód feloldását, majd az így kapott értékekből generálj egy bonyolultabb html-t. Ha nem chrome-on csinálsz ilyet, akkor lazán másodpercek fognak eltelni egy gyorsabb gépen is. Ugyanez ez szerver oldalon (.NET, Java, Node.js) 1-2 milisecundum alatt megvan (PHP-ban is csak pár tíz milisec). Persze mindez csak egy teoretikus probléma, hogy érzékeltessem a futásidőbeli különbségeket. Mondhattam volna akár egy bonyolultabb súlyozós, rangsoról problémát is, hogy milyen különbség van ugyanazt az algoritmust js-ben futtatni, vagy szerver oldalon futtatni.
A Node.js-t pedig nagyon nem kéne a kliens oldali javascripthez keverni. A Node.js tisztán szerver oldalon fut, igaz javascriptben kell programozni, de ez csak puszta szintaktika, mivel gép kód fordul (és itt a fordulon van a hangsúly) belőle, azaz a Node.js ettől az egyik leggyorsabb szerver oldali kiszolgálója lett mostanra. Nem tudom, hogy ezzel sikerült-e megvilágítanom az előnyeit, ha nem hát nem.
-
cucka
addikt
válasz
Speeedfire #2018 üzenetére
A node.js szerveroldali javascript, tehát semmi köze ahhoz, hogy mi történik a kliens böngészőjében.
Lényegében kiválthatod vele a PHP-ban (vagy másban) írt webes backend-et, de erre talán nem a legjobb eszköz. Amiben viszont tényleg nagyon jó, hogy villámgyorsan tudsz benne restful api-kat fejleszteni, ráadásul nagyon magasra skálázódik mindenféle trükk nélkül. -
cucka
addikt
válasz
Speeedfire #2011 üzenetére
Ismerem, használtam, szerintem marha jó.
Ha komplex UI-t szeretnél készíteni, ahol minden mindennel összefügg és frissül (pl. komplex formokat csinálni js-ben), akkor megváltás. -
martonx
veterán
válasz
Speeedfire #2014 üzenetére
A js eleve nem gyors, pláne, amikor már egészen bonyolult, nagy dom-okat kell macerálni, hiába írnak meg rá mostanra ilyen-olyan 3d engineket is. Kivétel ez alól a Webkit, az b***t gyorsan futtatja a klasszikus webes js feladatokat.
Szóval a gyorsasága relatív. Nem mondtam, hogy lassú, de nem js-ben fogsz több ezer sornyi adatsoron dinamikus sorbarendezést csinálni, közben mezőket kalkuláltatni egymásból, meg dom-ot buzerálni 1-2 milisecundum alatt. Pláne, ha cél, hogy mindez akár a legújabb Ie, Firefox alatt is elfogadható sebességű legyen, és akkor még nem is beszéltem a 600Mhz-es Arm-os egymagos mobilokról. Bár van egy KoGrid nevű bővítménye is a KO-nak, abban láthatod, hogy megfelelően egyszerű adatoknál, végletekig letisztult DOM esetén akár még ez is gyors tud lenni.
Nem véletlen, hogy a twitter például visszaváltott a minél inkább szerver oldali adatmanipulációkra a kliens oldali masszív js-ezés helyett (közben igaz dobta a Ruby-t is a Java javára, a MySQL-t pedig Lucene NoSQL-re cserélte, de ez most esetünkben mellékszál).
Azaz ezeknek a js-es MV* frameworköknek akkor csillan meg igazán a tudásuk, ha valami nagyon komplex Single Page Appilcation-t kell csinálnod, ahol minden kattintás mindennel összefügg, ugyanakkor nem kell több tízezer adatsorral dolgoznod.
De mindez csak az én személyes véleményem, tapasztalatom, cáfoljatok meg nyugodtan. -
martonx
veterán
válasz
Speeedfire #2011 üzenetére
Ismerem, használtam, bár mélyre nem merészkedtem vele. Van még az Ember.js, Angular.js, jsRender és még kismilló hasonló.
Konkrétan a KO-t használtam, mert ez az egyik legkönnyűsúlyúbb, és baromi jó a dokumentációja. Másrészt mivel könnyűsúlyú, nagy csodákat ne várj tőle, se tudásban, se futásteljesítményben. -
martonx
veterán
válasz
Speeedfire #1953 üzenetére
gondolom a php-nak nem sikerült szabványos json-né konvertálnia a shell scripttől kapott izét, így a jquery-nek sem sikerül ezt a kapott izét jsonná parse-olnia.
-
Sk8erPeter
nagyúr
válasz
Speeedfire #1730 üzenetére
NEM!
-
Sk8erPeter
nagyúr
válasz
Speeedfire #1728 üzenetére
Ez most össz. 2 perc volt: kábé csak kimásoltam a demóból, és máshogy használtam, anélkül, hogy bármennyire ismerném a plugint
(most ez nem azt jelenti, hogy én hű de ügyes vagyok, hanem hogy elég jó és gyorsan értelmezhető a dokumentációja)
-
Sk8erPeter
nagyúr
válasz
Speeedfire #1725 üzenetére
"Közben meglett a megoldás [...] Hibát ír ki rá."
Ez azért tetszett!
Tényleg jó kis megoldás az, ami exceptiont dob.Ez amúgy is díjnyertesen undorító megoldás, meg feltételezi/megköveteli, hogy te globális scope-ban használod azt az ominózus változót.
De eleve azt nem értem, hogy amennyiben újból ugyanazokkal a paraméterekkel szeretnéd meghívni a megfelelő metódust, akkor miért nem tárolod le egy objektumban, VAGY miért nem egy megfelelő függvényt hívsz meg a demóban mutatotthoz hasonlóan, ahol mindig ugyanazokkal a paraméterekkel inicializálja ezt a toastmessage-et. -
Speeedfire
félisten
válasz
Speeedfire #1724 üzenetére
Közben meglett a megoldás rá, de így sem az igazi.
Hibát ír ki rá.window['myToast']();
Uncaught TypeError: Object [object Object] has no method 'toastmessage'
-
Sk8erPeter
nagyúr
válasz
Speeedfire #1722 üzenetére
Na, akkor király, ha van róla demó.
Az általad belinkelt kódban meg nem tudom, mit nem értesz, én kértem, hogy mondd el, igazából mi is a kérdésed valahogy normálisan, ha nem, hát nem, nekem nem fontos ám. -
Sk8erPeter
nagyúr
válasz
Speeedfire #1720 üzenetére
"Na de ezt, hogy hozom létre?
A remove így megy, de létrehozni nem tudom hogy kellene változóból."
Izé! Én a kérdést nem értem. Milyen változóból, mit tartalmaz a változó, és mit szeretnél létrehozni belőle?Nincs erről a pluginről amúgy valami normális demó? Utálom az olyan plugineket, amik csak kódot mutatnak, de demót nem.
Nyilván a fejlesztőjének/inek rengeteg idejében telt volna feldobni egy rendes oldalt róla akár GitHubra, vagy pedig jsFiddle-demót összerittyenteni...
-
Sk8erPeter
nagyúr
válasz
Speeedfire #1649 üzenetére
Na, akkor király.
Amúgy ez a plugin már többször is lett itt asszem linkelve, azt hittem, ismered.
-
Sk8erPeter
nagyúr
válasz
Speeedfire #1647 üzenetére
-
Sk8erPeter
nagyúr
válasz
Speeedfire #1622 üzenetére
-
Sk8erPeter
nagyúr
válasz
Speeedfire #1620 üzenetére
Hát akkor felesleges igazából a plugin használata, legalábbis a lazyload szerepet nem tölti be (a lényegét).
-
Sk8erPeter
nagyúr
válasz
Speeedfire #1618 üzenetére
Jaja, valszeg így volt.
Most kipróbáltam ugyanezeket a képeket az új módszerrel (src-be csak egy helykitöltő, amúgy data-original attribútumra alapozás), és pontosan úgy működik, ahogy kellene: amikor odagörgetek valamelyik képhez, akkor a Network fülön látszik, hogy éppen betöltődik a kép!
Próbáld ki Te is:
http://jsfiddle.net/Sk8erPeter/kv5YB/4/embedded/result/Screenshot:
jól összenyomorítottam az ablakot, csak kettő kép fér bele, látszik alul, hogy csak két kép van betöltve: [link]
(itt az egész, görgetve, amit addig betöltött: [link])még mindig összenyomorítva, de látszik, hogy ahogy legörgettem a legaljára, szépen sorban töltődtek be a képek: [link]
-
Sk8erPeter
nagyúr
válasz
Speeedfire #1616 üzenetére
"Hát elvileg már a régi verziónál is csak akkor töltődött be a kép, ha odagörgetett valaki. Addig nem."
De ezt hogyan próbáltad?Mert most én teszteltem, úgy, hogy teljesen ürítettem a Chrome gyorsítótárát, aztán megnyitottam F12-vel a developer cuccost a Network fülnél, majd ráfrissítettem az oldaladra, és az oldal alján lévő, legutolsó kép nálam már elég korán betöltődött, anélkül, hogy odagörgettem volna:
-
Sk8erPeter
nagyúr
válasz
Speeedfire #1614 üzenetére
Hmm, fura. Hát akkor maradj a réginél.
Amúgy mi a haszna, hogy így töltődnek be nálad a képek pl. a filmes oldalon? Úgy értem, mivel az src-ben vannak megadva a képek elérési útjai, feltételezem (nem próbáltam!), így is-úgy is betöltődnek a böngészőbe a képek (ez így nem sávszélkímélő) - míg ezt pl. megoldja a data-original attribútum, mivel úgy ténylegesen spórol sávszélességet: így logikusnak is tűnik, hogy alapból az src-nek megadsz egy közös kitöltő képet, és csak "on-demand" töltöd be a képeket, amiket ebből az attribútumból szedsz.
Szerk.: természetesen utóbbi módszer hátránya, hogy JS nélkül egyáltalán nem fog működni a képmegjelenítés... -
Sk8erPeter
nagyúr
válasz
Speeedfire #1612 üzenetére
De nem is úgy használtad, ahogy a hivatalos oldalon mutatja, példával illusztrálva, a data-original attribútumot felhasználva, az src-nek meg valami kitöltő képet megadva, de a width és height attribútumokat gondosan kitöltve.
A lazyload plugint bemásoltam, úgy megy: -
Sk8erPeter
nagyúr
válasz
Speeedfire #1606 üzenetére
Na jó va', ne ragozzuk.
Lényeg, hogy az eredeti gondod megoldódott.
-
Sk8erPeter
nagyúr
válasz
Speeedfire #1604 üzenetére
Mégsem tudtad, hogy mi a gond... elmagyaráztam, de azt mondod, hogy nincs miről beszélni.
-
Sk8erPeter
nagyúr
válasz
Speeedfire #1602 üzenetére
Ha nem lenne, nem vakerásztam volna ennyit.
-
Sk8erPeter
nagyúr
válasz
Speeedfire #1600 üzenetére
Másról beszélünk: a .find()-nál megy is az elsőre, de a sima jQuery-s selectoros dolognál nem.
Az oka pedig elég könnyen kitalálható: a .find() nem vár második paramétert, ezért lefossa, hogy megadtál neki plusz egyet, viszont a jQuery() vagy $() vár opcionális második paramétert, és ahogy megadod neki, az elcseszi a működését - pl. nyilván a '#socialsshare' nem egy érvényes context... -
Sk8erPeter
nagyúr
válasz
Speeedfire #1598 üzenetére
Nem, az elsőre sem működik.
Próbáld ki itt például így:$('input[title]', 'textarea[title]').addClass('asdasd');
alert($('input[title]').attr('class'));NEM fog működni (undefined-ot ad), mert hibás.
Ne akard a jQuery-t úgy használni, ahogy nem lehet. -
Sk8erPeter
nagyúr
válasz
Speeedfire #1594 üzenetére
"De a 2 külön sztring is megy amúgy."
Ebben biztos vagy?
http://api.jquery.com/jQuery/
Mert én nem hiszem.Most próbáltam, és nem működik.
-
Sk8erPeter
nagyúr
válasz
Speeedfire #1594 üzenetére
Szívesen.
Hát fogalmam sincs, korábban miért volt a social gomboknál ilyen para, és gondolom csak akkor fordult elő, amikor a $(document).tooltip();-et használtad. Sosem debuggoltam ezeknek a social gomboknak a megjelenését, hogy hogyan működnek, lehet, hogy úgy többet tudnék mondani a dologról. Meg azt is tudni kéne, pontosan a $(document).tooltip(); hogyan működik (bár én úgy tudtam, az is csak a [title] attribútumok meglétére keres, de lehet, hogy a Fácsé-ikonoknál is van valami title a háttérben a betöltődéskor, azt is buzerálja, nem vágom; bár első ránézésre nincs title).
-
Sk8erPeter
nagyúr
válasz
Speeedfire #1592 üzenetére
$('body').find('#bottomtop', '#socialsshare').addClass('tooltip-excluded');
Őőőő... miért művelsz Te ilyet?
Egyrészt: minek itt a find()?
Másrészt: nem kell két külön stringbe rakni, tudtommal ez így nem fog működni, csak egy stringként.Tehát helyette:
$('#bottomtop, #socialsshare').addClass('tooltip-excluded');
A másik:
$('*').not('.tooltip-excluded')helyette akkor már:
$('[title]').not('.tooltip-excluded')Tehát csak arra lesz érvényes, aminél van title attribútum.
Ezenkívül ugye nem kell mondani, hogy mindig sokat segít egy jsFiddle- vagy jsbin-példa? -
Speeedfire
félisten
válasz
Speeedfire #1591 üzenetére
Még mindig nem jöttem rá a megfelelő megoldásra.
Sk8erPeter ötletéből efelé vettem az irányt, de még mindig nem megy. Minden elemet meg nem szeretnék felsorolni, aminek kell tooltip.$('body').find('#bottomtop', '#socialsshare').addClass('tooltip-excluded');
$('*').not('.tooltip-excluded').tooltip({
show: {
effect: "fadeIn"
},
hide: {
effect: "fade"
},
tooltipClass: "uitooltip",
track: true
});
Új hozzászólás Aktív témák
Hirdetés
- Ritkaság! Csere-Beszámítás! Intel I9 13900KS Processzor!
- Csere-Beszámítás! Corsair Dominator Platinum 2x32GB (64GB) Kit 5200MHZ DDR5
- Xiaomi 14 512GB, Kártyafüggetlen, 1 Év Garanciával
- Latitude 5430 27% 14" FHD IPS i7-1265U 16GB 512GB NVMe magyar vbill ujjlolv IR kam gar
- Bomba áron dobozos új GIGABYTE /I7-13620H 16GB 1 TB SSD Nvidia RTX 4050 6GB 144 Hz FHD IPS/
- ÁRGARANCIA! Épített KomPhone i9 14900KF 64GB RAM RTX 5090 32GB GAMER PC termékbeszámítással
- Napi 700 ft tól elvihető RÉSZLETRE BANKMENTES HP 840 G11 Ultra 5
- Telefon Felvásárlás!! iPhone 14/iPhone 14 Plus/iPhone 14 Pro/iPhone 14 Pro Max
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7600X 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- Apple iPhone 12 Mini 64GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest