🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.lang.javascript
6 messages
6 total messages Started by gryfi Mon, 12 Apr 2010 07:11
jquery - klik klik
#49960
Author: gryfi
Date: Mon, 12 Apr 2010 07:11
34 lines
1426 bytes
Witam,

Chciałbym zrealizować funkcjonalność polegającą, że po kliknięciu za 
pierwszym razem na obiekcie .element1 wykonuje się jedna funkcja a po 
kliknięciu za drugim razem wykonuje się druga funkcja (i tak na zmianę).

Jakaś propozycja?

Pomysł 1:

   $(".element1").bind("click", function(){
     // kod 1
   });

   $(".element1").unbind("click", function(){
     // kod 2
   });

Pomysł 2:

   // zamień na element 2
   $(".element1").click(function() {
     $(this).addClass("element2");
     // kod 1
   });

   // zamień na element 1
   $(".element2").click(function() {
     $(this).addClass("element1");
     // kod 2
   });


Pozdrawiam.
Re: jquery - klik klik
#49961
Author: Peter May
Date: Mon, 12 Apr 2010 07:22
35 lines
1621 bytes
W dniu 2010-04-12 09:11, gryfi pisze:
> Witam,
>
> Chciałbym zrealizować funkcjonalność polegającą, że po kliknięciu za
> pierwszym razem na obiekcie .element1 wykonuje się jedna funkcja a po
> kliknięciu za drugim razem wykonuje się druga funkcja (i tak na zmianę).
>
> Jakaś propozycja?

$(".element1").bind("click", function(){

  if(!$(this).attr("func"))
  {
   $(this).attr("func", "1");
  }

  if($(this).attr("func", "1"))
  {
   // funkcja 1
   [...]
   $(this).attr("func", "2");
  }
  else
  {
   // funkcja 2
   [...]
   $(this).attr("func", "1");
  }

});

Pisane "z palca", może nie zadziałać :-)

-- 
Peter
Re: jquery - klik klik
#49962
Author: gryfi
Date: Mon, 12 Apr 2010 07:52
38 lines
1537 bytes
Peter May wrote:
> W dniu 2010-04-12 09:11, gryfi pisze:
>> Witam,
>>
>> Chciałbym zrealizować funkcjonalność polegającą, że po kliknięciu za
>> pierwszym razem na obiekcie .element1 wykonuje się jedna funkcja a po
>> kliknięciu za drugim razem wykonuje się druga funkcja (i tak na zmianę).
>>
>> Jakaś propozycja?
> 
> $(".element1").bind("click", function(){
> 
>  if(!$(this).attr("func"))
>  {
>   $(this).attr("func", "1");
>  }
> 
>  if($(this).attr("func", "1"))
>  {
>   // funkcja 1
>   [...]
>   $(this).attr("func", "2");
>  }
>  else
>  {
>   // funkcja 2
>   [...]
>   $(this).attr("func", "1");
>  }
> 
> });
> 

O to chodziło!

// if( $(this).attr("func") == 1 )

Dziękuję, i pozdrawiam.
Re: jquery - klik klik
#49963
Author: ramblinman
Date: Mon, 12 Apr 2010 08:37
18 lines
1287 bytes
gryfi pisze:
> Peter May wrote:
>> W dniu 2010-04-12 09:11, gryfi pisze:
>>> [...]
> O to chodziło!

A nie prościej tak:

$('.element1').toggle(
	fun1(){
		...
	},
	fun2(){
		...
	}
);

?
Re: jquery - klik klik
#49964
Author: Peter May
Date: Mon, 12 Apr 2010 08:53
22 lines
1331 bytes
W dniu 2010-04-12 10:37, ramblinman pisze:
> gryfi pisze:
>> Peter May wrote:
>>> W dniu 2010-04-12 09:11, gryfi pisze:
>>>> [...]
>> O to chodziło!
>
> A nie prościej tak:
>
> $('.element1').toggle(
> fun1(){
> ...
> },
> fun2(){
> ...
> }
> );

Tak też może być. Rozwiązań pewnie można by mnożyć wiele :D

-- 
Peter
Re: jquery - klik klik
#49965
Author: Paweł Piskorz
Date: Mon, 12 Apr 2010 13:02
25 lines
1389 bytes
On 2010-04-12 10:37, ramblinman wrote:
> gryfi pisze:
>> Peter May wrote:
>>> W dniu 2010-04-12 09:11, gryfi pisze:
>>>> [...]
>> O to chodziło!
>
> A nie prościej tak:
>
> $('.element1').toggle(
> fun1(){
> ...
> },
> fun2(){
> ...
> }
> );

Żeby na to wpaść trzeba dokumentację przeczytać ;)


-- 
message[autor="PablO"]::after {
	content:"Pozdrawiam";
}
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads