5

hey adamlar tıklandığındagizlemek jquery ui menü başka bir yerde

im biraz jquery ve javascript ile bir acemi ... Bana yardım umuyordum. Bir nesneyi tıklatıldığında görünen bir jquery-ui menüsünü uygulamaya çalışır ancak menüden başka bir yerde bir tıklama yapıldığında fark edilir.

bu

şimdiye kadar
$("div.item").click(function(e){ 
     $("#menu").menu(); 
     $("#menu").css("top",e.pageY); 
     $("#menu").css("left",e.pageX); 

     }); 

şimdi gizlemek ve bir tıklama önceden menü itself..thanks yerde dışında yapılırsa menüyü yok etmek isteyen var koddur.

cevap

8

Nesne odağı kaybettiğinde yanan bulanıklık olayını kullanmak istersiniz. Başka bir şeye tıkladığınızda odak uzaklaşacaktır. Yukarıdaki kod ve yorum için tanklara

$("#menu").blur(function() { 
    // Your code here to either hide the menu (.toggle()) 
    // or remove it completely (.remove()). 
}); 
+0

, işe uyuyamıyrom yardımcı olur umarım. –

+4

aslında işe koyuldu .. Sadece $ ("# menu") yapmam gerekiyordu. tıklandığında tıklandığında ve menü gösterildiğinde, odak menüde değildi. açıklama için bana teşekkür ettim çünkü teşekkürler .. –

1

(@ ölüme relic0, @ levi-Botelho) JQuery UI selectmenu widget'la aynı sorunu vardı ve sorun çünkü ben oluştu

// create 
$('#menu').blur(function() { 
    $('#menu').hide(); 
}); 

// show 
$('#menu').show().focus(); 
0

JQuery UI selectmenu css dosyasını almadı. Yapmamayı seçtim çünkü seçim menüsünü kendim yapmak istedim. Ben kendi css için [aria-hidden="true"] { display: none; } eklendi sorunu gidermek için

, ben sorunu çözmek için çalışırken etrafında oynarken bu arya mülkiyet true ve false arasında geçiş olduğunu fark ettim.

0

Bu, jquery datepicker öğelerini gizlemek için Oodles Technologies uygulamasında izlediğimiz işlemdir.

Modelimizin temel yapısı şöyle görünecektir.

Bu, temel css'mizdir ve bu, tanımlanmış yükseklik modları içindir.

.modal-body { 
    min-height: 500px; 
    max-height: 500px; 
    overflow: auto; 
} 

$(".modal-body").scroll(function(){ 
    $("#ui-datepicker-div").hide(); 
}); 

Ben "#menu" İlk kez bir öğeyi tıklayın ve ekrandaki başka tıklayın yalnızca bazı nedeni olayının çağrılması için