在jQuery中,有.hide()
和.show()
方法設置CSS display: none
設置。相當於jQuery .hide()設置可見性:隱藏
是否有等效功能可以設置visibility: hidden
設置?
我知道我可以使用.css()
但我更喜歡.hide()
左右的一些功能。謝謝。
在jQuery中,有.hide()
和.show()
方法設置CSS display: none
設置。相當於jQuery .hide()設置可見性:隱藏
是否有等效功能可以設置visibility: hidden
設置?
我知道我可以使用.css()
但我更喜歡.hide()
左右的一些功能。謝謝。
你可以製作自己的插件。
jQuery.fn.visible = function() {
return this.css('visibility', 'visible');
};
jQuery.fn.invisible = function() {
return this.css('visibility', 'hidden');
};
jQuery.fn.visibilityToggle = function() {
return this.css('visibility', function(i, visibility) {
return (visibility == 'visible') ? 'hidden' : 'visible';
});
};
如果你想重載原來的jQuery toggle()
,我不建議...
!(function($) {
var toggle = $.fn.toggle;
$.fn.toggle = function() {
var args = $.makeArray(arguments),
lastArg = args.pop();
if (lastArg == 'visibility') {
return this.visibilityToggle();
}
return toggle.apply(this, arguments);
};
})(jQuery);
沒有一個內置的,但你可以編寫自己很容易:
(function($) {
$.fn.invisible = function() {
return this.each(function() {
$(this).css("visibility", "hidden");
});
};
$.fn.visible = function() {
return this.each(function() {
$(this).css("visibility", "visible");
});
};
}(jQuery));
然後,您可以調用這個像這樣:
$("#someElem").invisible();
$("#someOther").visible();
這裏有一個working example。
如果您只需要隱藏標準功能,只隱藏可見性:隱藏以保持當前佈局,您可以使用隱藏的回調函數來更改標籤中的CSS。 Hide docs in jquery
一個例子:
$('#subs_selection_box').fadeOut('slow', function() {
$(this).css({"visibility":"hidden"});
$(this).css({"display":"block"});
});
這將使用普通的酷動畫隱藏DIV,但動畫結束後,你設置的知名度,隱藏和顯示阻攔。
一個例子:http://jsfiddle.net/bTkKG/1/
我知道你沒有想要的$(「#AA」),CSS()的解決方案,但你並沒有規定這是因爲只使用CSS()方法,你失去了動畫。
一個更簡單的方法,這樣做是爲了使用jQuery的toggleClass()方法
CSS
.newClass{visibility: hidden}
HTML
<a href="#" class=trigger>Trigger Element </a>
<div class="hidden_element">Some Content</div>
JS
$(document).ready(function(){
$(".trigger").click(function(){
$(".hidden_element").toggleClass("newClass");
});
});
我喜歡這種方法。它不那麼自包含,因爲它需要單獨的樣式表,但它有助於將樣式表中的所有樣式信息保留在它應該屬於的位置。如果你想禁用可見性,你可以在一個地方改變一個css標籤,而不是改變你所有的js代碼。 – vaughan 2014-02-09 04:31:20
對於那些使用引導,這個類被稱爲不可見。 – user239558 2014-09-23 20:54:31
您可以實現自己的基於在'.toggle()'上 – zerkms 2012-03-08 08:19:11
我也是jQuery的toggleClass()方法的粉絲:) http://jqueryui.com/toggleClass/隨意查看我在下面的答案中共享的示例http://stackoverflow.com/a/ 14632687/1056713 – 2017-05-04 21:41:00