2013-06-18 9 views
7

हैलो मैंने इंटरनेट पर थोड़ी सी खोज की, लेकिन मुझे वह नहीं मिला जो मैं वास्तव में देख रहा था। लेकिन वैसे भी, जो मैं खोज रहा हूं वह कुछ है जैसे तत्व छुपा हुआ है, तो यह एक क्रिया करने वाला है, और फिर यदि तत्व दिखाई देता है तो यह एक और कार्रवाई करेगा। इस मामले में मैं एक शो/छुपा मेनू बना रहा हूं, जब आप मेनू आइकन (कक्षा ".toggle" के साथ) पर क्लिक करते हैं, तो यह अस्पष्टता को 1 में बदल देगा, और जब आप मेनू को छुपाते हैं तो आइकन अस्पष्टता फिर से 0.6 हो जाएगी ।Jquery: यदि तत्व छिपा हुआ है, तो कार्रवाई करें?

यहाँ मेरी कोड वैसे भी:

$(".sidebar_menu").hide(); 
$(".sidebar li.toggle").click(function(){ 
$(".sidebar_menu").animate({width: "toggle"}, 200); 
// Here's where the code I can't figure out is gonna be. 
}); 

आशा है कि आप लोग चाहते हैं मेरी मदद, यह अच्छा होगा! धन्यवाद।

+0

खेद है कि आपको समस्या पर विस्तृत सकता है ? संभवतः www.jsfiddle.net पर एक उदाहरण दिखा रहा है? – cgatian

उत्तर

9

इस hidden और visible तत्वों के लिए काम करता है:

$(".sidebar_menu").hide(); 
$(".sidebar li.toggle").click(function(){ 
    $(".sidebar_menu").animate({width: "toggle"}, 200, 
    function() { 
     if($(this).is(':visible')){ 
     $(".toggle").css({opacity: 1}); 
     } else if ($(this).is(':hidden')) { 
     $(".toggle").css({opacity: 0.6}); 
     }; 
    }) 
    }); 
}); 

संपादित करें:.toggle() साथ

$(".sidebar_menu").hide(); 
$(".sidebar li.toggle").click(function(){ 
    $(".sidebar_menu").toggle('slow', 
    function() { 
     if($(this).is(':visible')){ 
     $(".toggle").css({opacity: 1}); 
     } else if ($(this).is(':hidden')) { 
     $(".toggle").css({opacity: 0.6}); 
     }; 
    }) 
    }); 
}); 

यहाँ आप एक छोटा सा उदाहरण देखें: FIDDLE

+0

ऐसा लगता है कि इस के साथ ट्रांसफॉर्मर हैं (आंखों से अधिक से अधिक) मुझे यकीन है कि .is (': visible') काम करेगा लेकिन मैं शर्त लगाने के लिए तैयार हूं कि इसके लिए और भी कुछ है। – cgatian

+0

यह सिर्फ मुझे एक त्रुटि दी:/ –

+0

अभी भी? मैंने अपना जवाब संपादित किया। – supersize

संबंधित मुद्दे