我的要求非常简单,它必须检查变量并相应地显示/隐藏类。它位于sharepoint发布页面上。 使用以下代码段无效。
if ( source = 'show')
{
$('.classshide').hide();
}
else
{
$('.classsshow').hide();
}
只有在显示源变量时它才有效,并且它也应该在其他方面起作用,当它不等于show或等于hide时,请隐藏classshow。
答案 0 :(得分:2)
你的平等测试是错误的。
if ( source = 'show')
应该是
if ( source == 'show')
或者可能是
if ( source === 'show') //if source is a string and you don't want type coercion
答案 1 :(得分:0)
请使用严格比较===
。它更快,因为它在比较变量的type
时无需转换value
。
编辑:
// get what the current state of hide/show is
var source = $('.classhide').length === 0 ? 'show' : 'hide';
if ( source === 'show') {
$('.classshide').hide();
} else {
$('.classsshow').hide();
}
答案 2 :(得分:0)
您需要使用相等(==
)或严格相等(===
)运算符将source
变量与if语句中的“show”进行比较。因为你提到需要显示以及隐藏类,我猜你想要交替显示哪些类,所以我相应地调整了其余的代码。
if ( source === 'show' )
{
$('.classshide').hide();
$('.classsshow').show();
}
else if ( source === 'hide' )
{
$('.classsshow').hide();
$('.classshide').show();
}
else // for some reason source is neither 'show' or 'hide'
{ //default to the logic for if it is 'hide'
$('.classsshow').hide();
$('.classshide').show();
}