nemec Posted March 26, 2010 Report Share Posted March 26, 2010 Pavisam nesen saražoju ielu modes lapu. Varbūt saturs nebūs jums interesants :). Bet ceru, ka interesēs izstrāde. Tātad lapa pilnībā darbojas uz ajax pieprasījumiem. Ja uzspiežam uz kādas saites, tad ar javascriptu tiek nolasīts href atribūts, pielikts klāt ?j parametrs (kas nozīmē, ka tiek pieprasīti json dati). Tātad piemēram http://stylewish.lv/55-casual/?j , šeit var redzēt saturu, kur ir "template" (šablons), un "context" (atbild par šablona aizpildīšanu ar datiem). Pēc šī pieprasījuma <div id="dyn-cont"></div> blokā tiek ievietots jauns šablons ar apstrādātu saturu. Šabloni priekš javascripta izskatās sekojoši http://stylewish.lv/design/js/d/template.js. Viss būtu vienkārši, bet tieši tāds pats šablonizators strādā arī iekš PHP (servera pusē). Ja es uztaisu jaunu šablonu un aizpildu to ar kaut kādiem datiem, tad man tas ir jādara vienā vietā (bet strādās AJAX versijā un parastajā). Tādai pieejai ir vairākas priekšrocības: 1) Ja lietotājam ir JS atbalsts, tad tiek dzenāti ļoti maz datu (ja pamanījāt, tad nav html tagu). Šabloni tiek apstrādāti ar JavaScript - tātad lietotāja resursi. 2) Tas pilnībā neskar lietotājus bez JS atbalsta. 3) Izstrāde notiek, kā parasti tikai PHP pusē. Tā kā dati tiek dzenāti caur javascriptu. Tad pastāv arī iespējas kešot datus iekš javascripta. Forši vai nē? :) Atšķirībā no kešošanas uz servera, tad klienta pusē nav vajadzīgi lieki pieprasījumi (dārgais laiks), dati ir uzreiz gatavi. Protams pastāv jautājums cik daudz lietotājs spiež uz vienas un tās pašas saites, ja šis skaitlis ir mazs, tad no tādas kešošanas dižas jēgas nebūs. Ja runājot par pašu template engine, tad tas darbojas līdzīgi http://beebole.com/pure/. Manā versijā ir viss daudz vienkāršāks js (mootools plugins) Quote Link to comment Share on other sites More sharing options...
2easy Posted March 26, 2010 Report Share Posted March 26, 2010 stilīgi (to saku par ajax) ;) good job! Quote Link to comment Share on other sites More sharing options...
briedis Posted March 26, 2010 Report Share Posted March 26, 2010 Tīri forši! Vienīgais, kas man nedaudz nepatīk ir lēnā back poga... Quote Link to comment Share on other sites More sharing options...
nemec Posted March 26, 2010 Author Report Share Posted March 26, 2010 Back poga nebūtu tā lēnā. Ja attaisa firebug, tad var redzēt, ka atbilde atnāk ~ 0.1sek. Problēma ir lielu datu parsēšanā iekš JavaScript šablonizatora. Gandrīz katrā lapā tiek parsēts viens šablons priekš 10 foto, tur arī rodas tā aizture. Šeit vienkārši vajag optimizēt JavaScript daļu :) Quote Link to comment Share on other sites More sharing options...
2easy Posted March 26, 2010 Report Share Posted March 26, 2010 vajag uztaisīt tā, lai javascript tikai nomaina html. tad viss arī iekļausies tajā pašā 0.1 sec kr4 vairāk vajag izdarīt uz servera un tur nokešot, tā lai visur visu pēc iespējas padod gatavu Quote Link to comment Share on other sites More sharing options...
briedis Posted March 26, 2010 Report Share Posted March 26, 2010 Pie mūsdienu neta ātrumiem varbūt vairs nav vērts parāk iespringt uz datoju apjoma kā to pašu izpilda... Ja pāris KB cena ir pāris sekundes, tad nu toč nav vērts... Quote Link to comment Share on other sites More sharing options...
Aleksejs Posted March 26, 2010 Report Share Posted March 26, 2010 Diemžēl, šobrīd pārlūkā patērētais laiks tiek sadalīts aptuveni šādi: Avots Quote Link to comment Share on other sites More sharing options...
nemec Posted March 26, 2010 Author Report Share Posted March 26, 2010 Es nemaz neiespringstu uz datu apjoma. Šeit vairāk jau darbojas loģika, kāpēc man ir jāparsē šablons uz servera, ja to var darīt uz klienta pārlūka. Man patīk atslogot serveri, pie tam tik elegantā veidā. Priekš kam, tad tantes pērk tos dual core :) Nu un protams, loģiski, ja lietotājs salādē šablonus un tikai tad staigā pa lapu, saņemot tikai nepieciešamos datus. Quote Link to comment Share on other sites More sharing options...
Kavacky Posted March 27, 2010 Report Share Posted March 27, 2010 Man visvairāk no funkcionalitātes nepatīk tas, ka ir atņemta vidējā poga, ar ko atvērt linku jaunā logā bez iešanas caur labās pogas popup menu. Un FF2 JS nefunkcionē, jo: "Error: too much recursion; Source File: http://stylewish.lv/design/min/?g=js; Line: 1", LOL. :D PS: Saturs arī interesants. Quote Link to comment Share on other sites More sharing options...
2easy Posted March 27, 2010 Report Share Posted March 27, 2010 (edited) toč, turot nospiestu ctrl, ar klikšķi nevar atvērt linku jaunā tabā! wtf??? kas tā par usability cūcību? Edited March 27, 2010 by 2easy Quote Link to comment Share on other sites More sharing options...
nemec Posted March 27, 2010 Author Report Share Posted March 27, 2010 Nevienam browser funkcionalitāti atņemt nevēlējos :) Biju piemirsis, ka ctrl+click ir arī jauns tabs, tāpēc tas jau ir labots. Kavacky laikam skatījās caur chrome, tur arī izlaboju vidējo pogu. Vēlams turpmāk pievienot pārlūku+OS, lai var operatīvi konstatēt kļūdas. Par tām metodēm ar jaunu tabu (vidējo pogu, ctrl+click), var arī pārmest pārlūkam (nevis man :)). Piemēram FF, uz vidēja clicka, JS vispār nestrādā, jo tiek izsaukta browser fukcionalitāte - jaunas tabs. Dīvaini ir ka uz ctrl+click tiek izsaukts javascripts, un tikai tad nostrādā browser funkcionalitāte. Ar chrome viss iet caur JS. Un piemēram tādam pārlūkam kā Opera, nav tāda ctrl+click - jaunais tabs. Katrs pārlūks darbojas pa savam, to gribēju teikt :) Paldies par kļūdām! Quote Link to comment Share on other sites More sharing options...
2easy Posted March 27, 2010 Report Share Posted March 27, 2010 (edited) Paldies par kļūdu labojumiem! ^^ hmm, tomēr ne līdz galam :P http://stylewish.lv/labakie/nedelas/#_/jaunakie/ pēc ctrl+clk navigācija sākas no cita līmeņa :D:D:D Edited March 27, 2010 by 2easy Quote Link to comment Share on other sites More sharing options...
nemec Posted March 27, 2010 Author Report Share Posted March 27, 2010 Jā, tā tas ir. Novācu šo arī, bet cita iemesla deļ. Lietotāji bieži pārsūta saites, un tava dotā ir tieši tas nesmuks piemērs. Bet no navigācijas viedokļa nekas nemainās. Quote Link to comment Share on other sites More sharing options...
2easy Posted March 27, 2010 Report Share Posted March 27, 2010 a kāpēc raksti #_ nevis vnk # ? Quote Link to comment Share on other sites More sharing options...
nemec Posted March 30, 2010 Author Report Share Posted March 30, 2010 Tāpēc, ka tajā anchorā var glabāt vairākus mainīgos piemēram _(.+) ir adrese, vēl vari piekabināt kaut kādus mainīgos (kam citam, nevis adresei) Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.