【发布时间】:2016-06-21 04:49:57
【问题描述】:
我正在学习 JavaScript,我需要帮助,因为我不知道如何为属性的 if else 语句使用布尔值。请帮助我,谢谢。
我正在尝试使用 jQuery 让我的搜索栏隐藏并在点击时显示。
$(function() {
function runEffect() {
var options = {};
var callback = {};
var yo = $("#search").attr("style").hide();
if (yo = false) {
$( "#search" ).hide( 'drop', options, 1000, callback );
}
else{
$("#search").removeAttr("style").hide().fadeIn();
}
}
$("#btnSearch").click(function() { runEffect()
});
})
【问题讨论】:
-
=是赋值,==和===是比较。 -
@elclanrs 最好避免向初学者提及 ==,除非是在“不要使用它”的情况下,我应该想到。
-
我认为值得一提的是,如果一个变量总是有一个布尔值,那么简单地说 if (flag) {...} 或 if (!flag) {...} 是安全的。无需与静态值进行比较
-
还值得一提的是,将 .attr("style") 与 .hide() 链接起来没有任何意义。还值得一提的是,当您使用语句 $("#search").attr("style").hide() 时,.hide() 返回一个 jQuery 对象,然后您将其分配给 'yo' 变量,然后尝试比较一个 jQuery 对象是否 == false,这没有任何意义
标签: javascript jquery if-statement attr