前言:我在一个页面上包含了 jQuery 和 jQuery UI。
我定义了这个函数:
function swap(sel) {
if (1 == 1) {
$(sel).hide('drop',{direction:'left'});
}
}
如何修复 (1 == 1) 部分以测试该元素是否已隐藏,然后将其带回(如果是)。我确信这很容易,但我是 jQuery 的新手。
前言:我在一个页面上包含了 jQuery 和 jQuery UI。
我定义了这个函数:
function swap(sel) {
if (1 == 1) {
$(sel).hide('drop',{direction:'left'});
}
}
如何修复 (1 == 1) 部分以测试该元素是否已隐藏,然后将其带回(如果是)。我确信这很容易,但我是 jQuery 的新手。
如果您不喜欢toggle
,那么这可能会对您有所帮助:
function swap(sel) {
if($(sel).is(':visible')) {
$(sel).hide('drop',{direction:'left'});
} else {
$(sel).show('drop',{direction:'left'});
}
}
也许$(sel).toggle();
是您正在寻找的东西?这是切换元素可见性的最佳方式。
正如其他回答者所说,toggle()
是最好的解决方案。但是,如果由于某种原因您不能/不想使用切换,并且您的选择器仅用于一个元素:
function swap(sel) {
if ($(sel).is(':visible')) { // Is this element visible?
$(sel).hide('drop',{direction:'left'});
}
}
警告: 如果元素或其任何父元素是 :visible 检查将返回误报:hidden
。如果这对您很重要,您可能需要查看此解决方案,该解决方案也尝试检查其中的任何内容。