Puslapiai: [1]   Į apačią

Autorius Tema: Javascript. Problema su setTimeout.  (Skaityti 81 kartai)

trimpirim

  • Forumo naujokas
  • Karma: +0/-0
  • Atsijungęs
  • Žinutės: 6
Javascript. Problema su setTimeout.
« : Liepos 06, 2009, 04:18:19 »
Iškilo bėda. Turiu šiokį tokį kodą pasirašęs, kurio viso čia nerodysiu. Parodysiu tik tą dalį, kurioje bėda. Taigi:
function rTur(tur) {
var tur;
tur = tur;
document.body.onscroll = function() {
setTimeout("sTur('tur')", 10);
};
window.onscroll =  function() {
setTimeout("sTur('tur')", 10);
};
}
Yra funkcija rTur, kurią naudoju paspaudus atitinkamą mygtuką. Čia viskas ore.
Kaip man kintamąjį įkišt į sTur funkciją, kuri yra naudojama su setTimeout?
Prisijungęs

primatas

  • Administratorius
  • Sr. Member
  • Karma: +18/-0
  • Atsijungęs
  • Žinutės: 357
Re: Javascript. Problema su setTimeout.
« Atsakyti #1 : Liepos 07, 2009, 01:47:01 »
kazkoks keistas kodas, kvieti f-cija tos f-cijos viduj ja pacia?

priimi kintamaji tur, poto sukuri nauja "tur" ir jam priskiri ji pati?

ka tu cia bandai padaryti? :]
Prisijungęs
Jūsų draugas, kolega ir puslapio administratorius,

Primatas.

trimpirim

  • Forumo naujokas
  • Karma: +0/-0
  • Atsijungęs
  • Žinutės: 6
Re: Javascript. Problema su setTimeout.
« Atsakyti #2 : Liepos 07, 2009, 03:21:24 »
Nu taip. Man reikia, kad į scrollinimą pradėtų reaguoti tik tada, kai iškviečiu funkciją.
Pascrollinus pradedama kita funkcija. Ji pradedama tik po tam tikro laiko, ką ir turėtų atlikti setTimeout funkcija. O kintamąjį "tur" prisiskiriu dėl to, kad neiškiltų problemų. Gal ir beprasmis darbas, bet man taip lengviau.
« Paskutinis taisymas: Liepos 07, 2009, 03:23:17 nuo trimpirim »
Prisijungęs

primatas

  • Administratorius
  • Sr. Member
  • Karma: +18/-0
  • Atsijungęs
  • Žinutės: 357
Re: Javascript. Problema su setTimeout.
« Atsakyti #3 : Liepos 08, 2009, 12:33:59 »
nu i ta klausima, kaip ikisti kintamaji tur i fcija, tai beda tikrai cia:


function rTur(tur) {
   var tur;
   tur = tur;

tu perduodi fcijai kintamaji tur, tada kai ja jau iskvieti ir persiunti jai ta "tur" su pacia pirma eilute sukuri nauja kintamaji tokiu pat pavadinimu, tai galimas daiktas kad issivalo buves tur ir sukuriamas naujas svarus tur. o poto tu tam tur priskiri ji pati, tai kad ir kam butu buves lygus tas tur, tu jam suteiki ta pacia reiksme :] tai kam tas

tur = tur; tai nepagavau ;]


apie f-ciajas ir perduodamus kintamuosius:

pirmas

antras

trecias

ketvirtas

ketvirtas

gal kazka rasi naudingo tau.

bet tokia eilute kaip kad

tur = tur, tai nemanau kad isvis kadanors turi kokia nors reiksme. jei jau yra kintamasis tur tai kam jam priskirinet jo pacio reiksme dar karta? vistiek gi niekas nepasikeicia.
Prisijungęs
Jūsų draugas, kolega ir puslapio administratorius,

Primatas.

trimpirim

  • Forumo naujokas
  • Karma: +0/-0
  • Atsijungęs
  • Žinutės: 6
Re: Javascript. Problema su setTimeout.
« Atsakyti #4 : Liepos 08, 2009, 02:53:02 »
Nu pradėjau juos priskirinėt tik tada, kai man kažkurie tokie pat kintamieji nebereagavo, o priskyrus - reagavo. Na matai, yra taip, kad aš žinau kaip į funkciją įkišt kintamąjį. Aš nežinau kaip į setTimeout įkišt funkciją su kintamuoju.
Tipo:
setTimeout("funkcija(kintamasis)", laikas);
Prisijungęs

primatas

  • Administratorius
  • Sr. Member
  • Karma: +18/-0
  • Atsijungęs
  • Žinutės: 357
Re: Javascript. Problema su setTimeout.
« Atsakyti #5 : Liepos 08, 2009, 11:14:45 »
ziurek:

<script type="text/javascript">

var c=0
var t

function timedCount() {

  document.getElementById('txt').value=c;
  c=c 1;
  t=setTimeout("timedCount()",1000);

}
</script>
ir:
function myfunction(txt) {
  alert(txt);
}
</script>
parsyk daugiau ka ten darai ir kodo papeistink
Prisijungęs
Jūsų draugas, kolega ir puslapio administratorius,

Primatas.

trimpirim

  • Forumo naujokas
  • Karma: +0/-0
  • Atsijungęs
  • Žinutės: 6
Re: Javascript. Problema su setTimeout.
« Atsakyti #6 : Liepos 08, 2009, 02:25:07 »
Bet aš gi ne tą pačią funkciją noriu su settimeout iškviest. O visiškai kitą:
function rTur(tur) {
   var tur;
   tur = tur;
   document.body.onscroll = function() {
      setTimeout("sTur('tur')", 10);
   };
   window.onscroll =  function() {
      setTimeout("sTur('tur')", 10);
   };
}

Va, matai, funkciją su kuria pradedu viską yra rTur, o setTimeouto funkcija - sTur.
Todėl man reik nusiųst kintamąjį į tą funkciją, kad jis žinotų, kokį divą man naudot.
Karoče, kodo čia daug, nepastinsiu. Pamėginsiu paaiškint.
Turiu divą, kurį noriu padaryt kaip popupą. Tipo paspaudus ant tokio ar tokio linko, man divo display padaromas į block. Divas atsiranda su fade effektu, bet be jQuery ir be jokių kitų bibliotekų. Pagal naršyklės dydį yra sukuriamas jo ilgis, bei plotis (kad neišeitų už ribų ir neatsirastų bereikalingas scrollinimas į begalybę į apačia). Tada, atsiradus tam vienam, atsiranda dar vienas, kuris uždengia viską aplinkui su opasičiu: 0.2. Atsiradus šitam, į pagrindinį divą yra kraunama informacija su AJAX (na čia neesmė). Ir va, galiausiai prieinam tą vietą, kurios man reikia. Čia: pascrollinus, man reikia, kad tik po tam tikro laiko divas pradėtų judėti į vietą, kur aš prascrollinau. Tai va tiek.
« Paskutinis taisymas: Liepos 08, 2009, 02:27:34 nuo trimpirim »
Prisijungęs

trimpirim

  • Forumo naujokas
  • Karma: +0/-0
  • Atsijungęs
  • Žinutės: 6
Re: Javascript. Problema su setTimeout.
« Atsakyti #7 : Liepos 09, 2009, 12:36:19 »
Susitvarkiau. Jei kam kils ta pati bėda, tai va:
setTimeout(function () {
norima_funkcija(parametras1, parametras2, ..., parametrasx);
}, laikas_milisekundėm);
Ačiū, kad stengeis ;]
Prisijungęs

primatas

  • Administratorius
  • Sr. Member
  • Karma: +18/-0
  • Atsijungęs
  • Žinutės: 357
Re: Javascript. Problema su setTimeout.
« Atsakyti #8 : Liepos 09, 2009, 10:10:38 »
nu svarbu susitvarkei : ] as tai su jquery daryciau situs dalykus ;] daug paprasciau :)
Prisijungęs
Jūsų draugas, kolega ir puslapio administratorius,

Primatas.

vitalikaz

  • Forumo naujokas
  • Karma: +1/-0
  • Atsijungęs
  • Žinutės: 23
Re: Javascript. Problema su setTimeout.
« Atsakyti #9 : Liepos 10, 2009, 08:41:21 »
sTur('tur') reikejo be ' rasyt, jeigu pati elementa nori perduot :) sTur(tur)
Prisijungęs

trimpirim

  • Forumo naujokas
  • Karma: +0/-0
  • Atsijungęs
  • Žinutės: 6
Re: Javascript. Problema su setTimeout.
« Atsakyti #10 : Liepos 11, 2009, 01:10:32 »
Ne, taip neveikia kaip ir rašant su ' ' ar " neveikia. setTimeout nepasiima kintamųjų... Nors, galėčiau ginčytis, nes kitoje funkcijoje naudojant ta patį setTimeout kintamąjį leidžia įkišti. Įdomus reikalas čia.
Prisijungęs
Puslapiai: [1]   Į viršų
 

Hey.lt - Nemokamas lankytojų skaitliukas