• 16-08-2019, 14:24:13
    #1
    Merhabalar, resime 2. kez tıklandığında yönlendirilmesini nasıl sağlayabilirim?
    İlk tıklama da yönlendirilmemesi gerekiyor.
  • 16-08-2019, 14:29:16
    #2
    <img id="resim" click-count="0" src="...." />
    <img id="resim" click-count="0" src="...." />
    <img id="resim" click-count="0" src="...." />
    $("img#resim").click(function() {
    var count = $(this).attr('click-count');
    if(count == 1) {
    $(this).attr('click-count', '0');
    window.location.href = "http://....";
    } else {
    $(this).attr('click-count', '1');
    }
    });
  • 16-08-2019, 14:30:00
    #3
    js ile bir değişken oluşturun ve o değişkeni her tıkta arttırın. pseudo kod yazıyorum aşağıya, javascripte çevirirsiniz. javascriptim iyi olmadığından js ile yazmayacağım, js'ye siz çevirmelisiniz.

    // x değişkeni oluşturup 0 değeri verelim.
    var x = 0;
    //resime tıklandığında x'e +1 ekleyelim.
    image.onclick(
      function() {
      //eğer x değeri 1 ya da daha fazlasıyla yönlendirelim.
        if (x >= 1 ) { href=xxx.xxx}
        //eğer değilse x'e 1 ekleyelim ki, diğer tıklamada yönlendirsin.
        else { x = x+1}
      }
    )
  • 16-08-2019, 14:30:37
    #4
    jquery ile yapabilirsiniz.
    https://api.jquery.com/dblclick/
    en basit hali ile:
    <script>
    // tıkalacak resimlere cifttiklama adında sınıf verin. data-href ozelliginede gidecegi adresi yazın.
    //<img src="...." class="cifttiklama" data-href="gidilecek adres";
    var divdbl = $( "c.ifttiklama" );
    divdbl.dblclick(function(e) {
    window.location = $(e.currentTarget).data("href");
    });
    
    </script>
  • 16-08-2019, 14:30:49
    #5
    <img id="img" clicked="0" url="example.com" src="image.jpg" />
    <script>
    $(function(){
    $("#img").click(function(){
    var clicked = $(this).attr("clicked");
    if(clicked == "0"){
    $(this).attr("clicked", "1");
    }else{
    var url = $(this).attr("url");
    location.href =url;
    });
    });
    </script>
  • 16-08-2019, 14:30:50
    #6
    İki yolu var diyebilirim, eğer ikinci tıklamadan sonra bir işleme gerek yoksa.

    Tıklama 1 olan yeri boş bırakırsın,
    tıklama 2 olan yere
    window.location.href = 'http://www.google.com';





    $('.click').click(function() {
      var clicks = $(this).data('clicks');
      if (clicks) {
         console.log("ikinci tıklama");
      } else {
        console.log("bir");
      }
      $(this).data("clicks", !clicks);
    });
    
    
    ------VEYA-----
    Bunu tercih ederim, 2 veya daha fazla tıklama da else olan kısmı harekete geçirecektir.
    
    var clicks = 0;
    
    $('.click').click(function() {
        if (clicks == 0){
            console.log("Tıklama 1");
        } else{
            console.log("Tıklama 2");
        }
        ++clicks;
    });
  • 16-08-2019, 14:30:48
    #7
    Resim dışındaki a tag'ini aşağıdaki şekilde yazıp;
    <a class="your-class" href="https://google.com" data-click-count="2">
    <img src="http://placehold.it/500">
    </a>
    Yukarıdaki kodda bulunan data-click count bölümüne de kaç defa tıklanması gerektiğini yazabilirsiniz.

    Aşağıdaki jQuery kodunu kullanabilirsiniz.

    $('.your-class').click(function(e){
    e.preventDefault();
    
    var clickCount = parseInt($(this).attr('data-click-count'));
    if(clickCount != 0){
    $(this).attr('data-click-count', (clickCount - 1));
    }else{
    window.location = $(this).attr('href');
    }
    });
  • 16-08-2019, 14:31:26
    #8
    $('img').on('click', function() => {
         if($(this).hasClass('active'))
              window.location = link;
         else
              $(this).addClass('active');
    });
  • 16-08-2019, 14:33:36
    #9
    crooper adlı üyeden alıntı: mesajı görüntüle
    jquery ile yapabilirsiniz.
    https://api.jquery.com/dblclick/
    en basit hali ile:
    <script>

    var divdbl = $( "a" );

    divdbl.dblclick(function() {

    * window.location = "gidilecek adres"

    });

    </script>
    En pratik yolu bu. Az kod cok is Cevabinizi kod taglari arasina alirsaniz daha anlasilir olabilir.