Hinnavaatlus
:: Foorum
:: Uudised
:: Ärifoorumid
:: HV F1 ennustusvõistlus
:: Pangalink
:: Telekavad
:: HV toote otsing
|
|
autor |
sõnum |
|
Kethmar
Kreisi kasutaja
liitunud: 21.06.2006
|
22.08.2011 15:15:15
Jqueryga probleem |
|
|
Tervist.
Keegi oskab öelda, mis toimub:
kasutan jquery slidein slideout'i, kuid probleem selline, et kui võtad hiire hoverilt ära enne, kui slideout/slidein lõpetada jõuab ning uuesti hiirega peale läheb, siis ta ei avane rohkem, kui sinna maani, kus efekt enne pooleli jäi.
Oskab keegi öelda, milles asi?
Kood ise:
$(document).ready(function(){
$("#otsi_paneel_in").hide();
$("#content_up_otsi, #otsi_paneel_in").mouseenter(function(){
$("#otsi_paneel_in").stop().slideDown('fast');
})
.mouseleave(function(){
$("#otsi_paneel_in").stop().slideUp('fast');
});
$("#logi_paneel_in").hide();
$("#content_up_logi, #logi_paneel_in").mouseenter(function(){
$("#logi_paneel_in").stop().slideDown('fast');
})
.mouseleave(function(){
$("#logi_paneel_in").stop().slideUp('fast');
});
});
|
_________________ Kodulehekülg: http://kethmar.ee/university
Vajad veebilahendust või graafilist abi? Küsi pakkumist. HV Rahvale alati odavamalt. |
|
Kommentaarid: 24 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
24 |
|
tagasi üles |
|
|
Kilpa
HV kasutaja
liitunud: 10.06.2010
|
23.08.2011 23:41:32
|
|
|
jQuery.stop() kirjutab divi algväärtused üle animatsiooni peatades. Hetkel ei ole aega workaroundi teha .
|
|
Kommentaarid: 25 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
24 |
|
tagasi üles |
|
|
matis
HV kasutaja
liitunud: 12.04.2004
|
|
Kommentaarid: 63 loe/lisa |
Kasutajad arvavad: |
|
:: |
1 :: |
1 :: |
59 |
|
tagasi üles |
|
|
Le Inc
HV Guru
liitunud: 06.09.2002
|
09.09.2011 18:33:10
|
|
|
Üks JQ teemaline küsimus.
Näituseks on mul ajax päring kus failist1 saadetakse POST meetodi kaudu parameetrid faili2, seal neid töödeldakse ja "success" korral vastus saadetakse .html(kama) kujul tagasi. Nüüd oleks vaja saadud vastust töödelda (vastavalt vastusele fail1 olevat JQ koodi juhtida). Kuidas seda teha? Ma ise mõtlesin kasutada .find() kus vastavalt vastuse tüübile on mingi klass või div või paragrahv vms. susatud ja sealt õige asi üles leida. Saab ehk kuidagi etemini? Saadetud vastusesse mõned var susata (kui saab siis kuidas)? JSON?
Lõpptulemusna peab saadud vastus kas sisselülitama või peatama Time funktsiooni (timer'i JQ plugin).
|
|
Kommentaarid: 56 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
54 |
|
tagasi üles |
|
|
Redikate
HV veteran
liitunud: 30.12.2005
|
09.09.2011 18:39:20
|
|
|
Kui ma nüüd õigesti aru saan, siis antud näide peaks paika pidama:
JQ:
$.post('fail2.php', {
muutuja: "muutujaVal"
}, function(data) {
if(data == "success")
{
// success, do something
} else {
// fail, do something else
}
});
|
PHP fail2.php
<?php
if($_POST['muuutuja'] == "tere")
{
print 'success';
} else {
print 'fail';
}
?> |
Kui sul nüüd successi korral tuleb html tagasi ja feili korral peaks midagi muud juhtuma, pead lihtsalt JQ if statementi muutma vastavalt oma vajadusele.
_________________ http://nodejs.org/
"I'm also a person. Programming is just one thing I do." |
|
Kommentaarid: 34 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
33 |
|
tagasi üles |
|
|
Le Inc
HV Guru
liitunud: 06.09.2002
|
09.09.2011 19:46:36
|
|
|
Mitte päris. php saadab fail1 $.ajax abil post infi fail2.php'sse. Fail2 post'tud kamaga tehakse tsiki-priki. Kui tsiki-priki on valmis imetakse see fail1 ühte success kaudu tagasi. NÜÜD saadud vastusest oleks JQ jaoks loetavalt vaja inf kätte saada. Vastuses on sips tavalist html koodi ja üks rida tähtsat asja. Sellest tähtsast asjast on mul vaja välja võluda mingi tunnus või muutuja millega ma saan Timer funktsiooni lülitada (see kõik toimub fail1). Timer omakorda juhib $(this).load(fail2.php) mis saadab uusi post päringud fail2 senikaua kui SOAP kaudu vastus saabub. Näiteks mingi errori puhul oleks post-pommitamine vaja kohe kinni panna, pole ju mõtet serverit kurnata.
Tegemist on mobiil-id selle osaga mis minu jaoks suhtelised tume maa - JQ (ilma refreshita autentimine) kasutaja liidese ehitamine.
|
|
Kommentaarid: 56 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
54 |
|
tagasi üles |
|
|
Timukas0
HV kasutaja
liitunud: 20.03.2007
|
|
Kommentaarid: 3 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
3 |
|
tagasi üles |
|
|
Le Inc
HV Guru
liitunud: 06.09.2002
|
16.09.2011 08:51:37
|
|
|
Küsimus jquery turvalisusest. Nii palju nagu ma googlist lugesin ei võimalda veebibrauserid domeenide vahelisi ajax päringud (vaikimisi on kinni keeratud), kuid see on vaid brauseris kinni, ilmselt saab seda ka kuidagi maha võtta?
Kuna JS kood on kasutajale näha, näeb ta ka php faili mille kaudu päring käib. Näiteks kui load() meetodiga antakse php paar asja POST kaasa ja vastusena tuleb valmis "toode", siis mis takistab kedagi teist oma serverisse sama jquery kood püsti panna ja läbi minu php faili vastust saada? On see üldse teema? Peaks ehk mingi hash-koodi süsteemi panema kaasa mis ei lase võõrast php koodile ligi?
|
|
Kommentaarid: 56 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
54 |
|
tagasi üles |
|
|
sosssepp
HV veteran
liitunud: 12.05.2003
|
16.09.2011 09:30:14
|
|
|
Php võimaldab ka kontrollida, kust päring tuli.
Näiteks $_SERVER muutuja REMOTE_ADDR
|
|
Kommentaarid: 85 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
2 :: |
73 |
|
tagasi üles |
|
|
matis
HV kasutaja
liitunud: 12.04.2004
|
16.09.2011 18:34:03
|
|
|
Le Inc kirjutas: |
Küsimus jquery turvalisusest. Nii palju nagu ma googlist lugesin ei võimalda veebibrauserid domeenide vahelisi ajax päringud (vaikimisi on kinni keeratud), kuid see on vaid brauseris kinni, ilmselt saab seda ka kuidagi maha võtta?
Kuna JS kood on kasutajale näha, näeb ta ka php faili mille kaudu päring käib. Näiteks kui load() meetodiga antakse php paar asja POST kaasa ja vastusena tuleb valmis "toode", siis mis takistab kedagi teist oma serverisse sama jquery kood püsti panna ja läbi minu php faili vastust saada? On see üldse teema? Peaks ehk mingi hash-koodi süsteemi panema kaasa mis ei lase võõrast php koodile ligi? |
Javascriptiga ei saa teha päringuid teise serverisse (Same Origin Policy), ehk et kasutaja jah saab küll kopeerida selle jquery koodi kuid mingit vastust talle tagasi ei tule.
Küll aga saab kasutaja selle koodi kätte, kui ta sama asja pärib näiteks üle PHP. Seega kätte on igal juhul seda infot tahtmise korral ikkagi saada.
Kui toote nägemine nõuab kasutaja sisselogimist, siis kindlasti tuleb tootekuvamisele ka vahele panna sisselogimise kontroll (jquery päring saadab sessiooni ja küpsised kenasti kaasa).
$_SERVER['REMOTE_ADDR'] ei aita, sest päring tehakse kasutaja oma brauseris, mitte veebiserveris.
Kui on tegemist väga sensitiivse infoga aga kasutajad sisse logima ei pea, siis kindlasti tuleb mingi hashimise süsteem mõelda.
hash oleks täiesti random ja salvestatakse sessiooni. Väliselt võiks seda hashi kuidagi ringi muuta sõltuvalt meetodi nimest, parameetritest jne.
Võõras server hashi ei tea ja seetõttu postitada ei saa, küll aga võivad nad teha HTTP kliendi, tekitada sessiooni ning siis HTML sourcest välja lugeda (selle kaitseks tuleb key kuidagi selliselt html lähtekoodi panna, et seda ei saaks arvutiga kergelt välja lugeda).
Magento näiteks kasutab oma admin paneelis iga meetodi jaoks eraldi key-d. http://www.aschroder.com/2009/03/magento-csrf-attack-explanation/
_________________ https://www.e-abi.ee/ - Pangalingid, Smartposti, Post24 moodulid, Järelmaksumoodulid. Magento, Prestahop, Wordpress. Aktsepteerin Bitcoini!
Soovid lisada oma tooteid HinnaVaatlusesse? https://www.e-abi.ee/magento/kasulikud/product-exporter-and-multi-product-feed-generator-hinnavaatlus.html |
|
Kommentaarid: 63 loe/lisa |
Kasutajad arvavad: |
|
:: |
1 :: |
1 :: |
59 |
|
tagasi üles |
|
|
Le Inc
HV Guru
liitunud: 06.09.2002
|
16.09.2011 19:52:45
|
|
|
Kui turvaline see brauserite poliitika on? Seega saaks põmst suvalise php failiga manipuleerida, kui sa tead $_POST['misiganes'] väärtust?
|
|
Kommentaarid: 56 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
54 |
|
tagasi üles |
|
|
Renka
HV Guru
liitunud: 01.04.2002
|
16.09.2011 20:43:38
|
|
|
Le Inc kirjutas: |
Kui turvaline see brauserite poliitika on? Seega saaks põmst suvalise php failiga manipuleerida, kui sa tead $_POST['misiganes'] väärtust? |
sa võid ju serverisse ükskõik mis andmeid sisestada. POST või GET kaudu - ei ole mingi kunst.
Sellepärast peabki serverippolel alati kontroll olema asjadel
_________________ There is no place like 127.0.0.1 |
|
Kommentaarid: 71 loe/lisa |
Kasutajad arvavad: |
|
:: |
2 :: |
1 :: |
61 |
|
tagasi üles |
|
|
matis
HV kasutaja
liitunud: 12.04.2004
|
16.09.2011 21:33:48
|
|
|
Le Inc kirjutas: |
Kui turvaline see brauserite poliitika on? Seega saaks põmst suvalise php failiga manipuleerida, kui sa tead $_POST['misiganes'] väärtust? |
Brauserite poliitika kontrollib ainult javascripti ning seda same origin policyt on võimalik murda.
Seepärast peabki kõike kasutaja sisestatud infot valideerima.
Valideerima peab mitte ilusa veateate pärast, vaid sellepärast, et võõras kodanik oma "koodi" Sinu serveris jooksutada ei saaks.
_________________ https://www.e-abi.ee/ - Pangalingid, Smartposti, Post24 moodulid, Järelmaksumoodulid. Magento, Prestahop, Wordpress. Aktsepteerin Bitcoini!
Soovid lisada oma tooteid HinnaVaatlusesse? https://www.e-abi.ee/magento/kasulikud/product-exporter-and-multi-product-feed-generator-hinnavaatlus.html |
|
Kommentaarid: 63 loe/lisa |
Kasutajad arvavad: |
|
:: |
1 :: |
1 :: |
59 |
|
tagasi üles |
|
|
Le Inc
HV Guru
liitunud: 06.09.2002
|
18.10.2011 15:41:40
|
|
|
Üks pähkel vajab purustamist. On jquery AJAX load käsk, lehe laadmisel ajax näppab pärngu ja tehakse xhr kaudu, aga teine klikk läheb miskipärast tavalist rada mööda. JS kood selline:
javascript:
|
$(document).ready(function(){ $("#tabel a").click(function() { $("#tabel").load("index.php?veerg='.$sql_veerg.'&jrk='.$sql_jrk.' #tabel tbody"); return false; }); });
|
Milles võib asi olla?
|
|
Kommentaarid: 56 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
54 |
|
tagasi üles |
|
|
Renka
HV Guru
liitunud: 01.04.2002
|
18.10.2011 15:42:06
|
|
|
Le Inc, sest see tabeli sisu asendatakse ja lingil ei ole enam event handlerit küles?
uuri mida teeb .live()
_________________ There is no place like 127.0.0.1 |
|
Kommentaarid: 71 loe/lisa |
Kasutajad arvavad: |
|
:: |
2 :: |
1 :: |
61 |
|
tagasi üles |
|
|
Le Inc
HV Guru
liitunud: 06.09.2002
|
18.10.2011 17:04:26
|
|
|
Teema on selles jah, aga ei saa ma .live hakkama. Ise jõudsin ka sinnamaani et teisel klikkimisel ei saa kood enam millestki aru. Live sisse suskamisel saan küll suva teksti append'ida ent kui lähen tabeli veergude pealkirju näppima teeb ta päringu ikka ilma ajax'ita.
Samas ju laetakse ainult tbody osa .. võimalik et asi on selles?
Tahaks sellist asja teha nagu siin on: http://programming4.us/mobile/3056.aspx Aga see jquery kood on jummala mööda, selle järgi laetakse terve leht uuesti.
|
|
Kommentaarid: 56 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
54 |
|
tagasi üles |
|
|
Renka
HV Guru
liitunud: 01.04.2002
|
18.10.2011 17:28:56
|
|
|
See siis ei toimi?
javascript:
|
$(document).ready(function(){ $("#tabel a").live('click', function(e) { e.preventDefault(); $("#tabel").load("index.php?veerg='.$sql_veerg.'&jrk='.$sql_jrk.' #tabel tbody"); }); });
|
Võibolla sul seal .load'is mikit jama - ei tea - sellesse ei süvenenud.
_________________ There is no place like 127.0.0.1 |
|
Kommentaarid: 71 loe/lisa |
Kasutajad arvavad: |
|
:: |
2 :: |
1 :: |
61 |
|
tagasi üles |
|
|
Le Inc
HV Guru
liitunud: 06.09.2002
|
18.10.2011 18:21:36
|
|
|
Mnjah, sinu pakutud kood ei muuda GET muutujaid, seega ei saa sql oma sisendeid kätte (lehe värskendamine käib tõesti läbi XHR).
Vähemalt seal näites toodud jutu järgi peaks kood olema universiaalne - kui JS tuge pole siis töötab kenasti edasi, ainult lehe värskendamisega. Igastahes nende 1:1 koodi koopia on täiesti mööda.
LISA:
Saab küll, lihtsalt ei saa kasutada php head omadust et peale klikki asc ja desc vahetuvad. Seega peab tegema pildikesed nool üles ja nool alla et saaks ka suuremast ja väiksemast sorteerida. Ilmselt paremat meetodit ei ole!?
|
|
Kommentaarid: 56 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
54 |
|
tagasi üles |
|
|
Renka
HV Guru
liitunud: 01.04.2002
|
18.10.2011 18:37:07
|
|
|
Le Inc, ma ei saa üldse aru mis point on URLi javascriptiga ehitada? pane A tagi sisse URL nii nagu peab ja ongi mure murtud.
javascript:
|
$(document).ready(function(){ $("#tabel a").live('click', function(e) { e.preventDefault(); $("#tabel").load($(this).attr('href')+" #tabel tbody"); }); });
|
_________________ There is no place like 127.0.0.1 |
|
Kommentaarid: 71 loe/lisa |
Kasutajad arvavad: |
|
:: |
2 :: |
1 :: |
61 |
|
tagasi üles |
|
|
Le Inc
HV Guru
liitunud: 06.09.2002
|
18.10.2011 18:44:03
|
|
|
Ma tahaks teha tabeli mida loetakse ajax'iga läbi oci8. Lehe värskendamisega on see käkitegu, aga jqueryga tahab veits arutamist saada. Kuna üks on kliendipoolne, siis on mul vaja kuidagi öelda mis veergu sorteerida ja millises järjekorras. Mina lootsin et ma saan php seda tegema panna (just asc ja desc). Põmst veeru lingile klikkides toggleb asc ja desc vahel.
Php olen ma kõik tabelid nii lahendanud ... Mõtlesin et prooviks edevamat ajax'i meetodit.
Sinu viimase näite järgi peaks keegi ka asc ja desc vahetama? Nende noole nupukeste paigutamine tabeli päisesse pole teab mis raske muidugi.
|
|
Kommentaarid: 56 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
54 |
|
tagasi üles |
|
|
Renka
HV Guru
liitunud: 01.04.2002
|
18.10.2011 19:07:23
|
|
|
Le Inc, no miks peaks see ikkagi javsacripti poolel lahendatud olema? Pane õige link HTMLi ja töötab kõik ju ideaalselt.
_________________ There is no place like 127.0.0.1 |
|
Kommentaarid: 71 loe/lisa |
Kasutajad arvavad: |
|
:: |
2 :: |
1 :: |
61 |
|
tagasi üles |
|
|
Le Inc
HV Guru
liitunud: 06.09.2002
|
18.10.2011 19:12:16
|
|
|
Renka kirjutas: |
Le Inc, no miks peaks see ikkagi javsacripti poolel lahendatud olema? Pane õige link HTMLi ja töötab kõik ju ideaalselt. |
Mhmh, tulebki nii teha. Iga sorteerimise viis saab oma lingi. Tänud.
|
|
Kommentaarid: 56 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
54 |
|
tagasi üles |
|
|
Renka
HV Guru
liitunud: 01.04.2002
|
18.10.2011 19:17:34
|
|
|
Le Inc kirjutas: |
Renka kirjutas: |
Le Inc, no miks peaks see ikkagi javsacripti poolel lahendatud olema? Pane õige link HTMLi ja töötab kõik ju ideaalselt. |
Mhmh, tulebki nii teha. Iga sorteerimise viis saab oma lingi. Tänud. |
Kuidas sul siis enne oli? Ühe lingiga ei saa ju nagunii erinevalt sortida vmt
_________________ There is no place like 127.0.0.1 |
|
Kommentaarid: 71 loe/lisa |
Kasutajad arvavad: |
|
:: |
2 :: |
1 :: |
61 |
|
tagasi üles |
|
|
Le Inc
HV Guru
liitunud: 06.09.2002
|
18.10.2011 19:24:20
|
|
|
Php ju saab. A la
php:
|
if (isset($_GET['jrk'])) { if ($_GET['jrk'] == 'asc') { $sql_jrk = 'desc'; } if ($_GET['jrk'] == 'desc') { $sql_jrk = 'asc'; } } else { $sql_jrk = 'desc'; }
|
Iga kord kui klikkida veeru pealkirja siis toggleb asc ja desc vahel. Samas fikseerid a href real veeru pealkirjad sarnaselt sellega mis baasis on. Mure ongi suurenevas ja vähenevas järjekorras. Php saab seda ühe nö "nupu" alla panna, jquery'ga pean seega kaks noolekest panema, üks on aadress&asc teine aadress&desc ja nii igale veerule.
|
|
Kommentaarid: 56 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
54 |
|
tagasi üles |
|
|
Renka
HV Guru
liitunud: 01.04.2002
|
18.10.2011 19:28:58
|
|
|
misasja sa seletad?
ega sa mingeid eraldi linke ei pea tegema. väljastad ju täpselt sama HTMLi mis niisama lehte laadides. Seal peaks ju lingid juba olemas olema vastavalt muule äriloogikale. miks sa midagi veel jqueryga muutma pead ma ei saa aru? Või mis noolekesi vaja on?
_________________ There is no place like 127.0.0.1 |
|
Kommentaarid: 71 loe/lisa |
Kasutajad arvavad: |
|
:: |
2 :: |
1 :: |
61 |
|
tagasi üles |
|
|
|