我正在尝试使用autosuggest创建一个下拉搜索框,并且所有代码在Chrome中运行正常,但我在Firefox中遇到问题。这个问题很奇怪。当在Firefox中执行该函数时,如果条件为真,则执行进入if部分,但如果不是真的则不执行else部分。
$('body').click(function(){
if($('.search').is(":focus"))
{
alert("is focused");
}
else if(!($('.search').is(":focus")))
{
alert("no");
}
});
这是我写的代码。我无法理解它出错的地方,但在Chrome中,执行顺利进行。
答案 0 :(得分:1)
可能你错过了html和body的css:
html,body{width:100%;height:100%;}
它工作正常: http://jsfiddle.net/lotusgodkk/Wu2Gh/1/
JS:
$('body').click(function () {
if ($('.search').is(":focus")) {
alert("is focused");
} else if (!($('.search').is(":focus"))) {
alert("no");
}
});
答案 1 :(得分:0)
尝试删除第二个条件并将其设为else
。 else if
似乎没有必要,因为您的条件是boolean
- true
或false
。
$('body').click( function() {
if($('.search').is(":focus")) {
alert("is focused");
}
else {
alert("no");
}
});
答案 2 :(得分:0)
你的JSFiddle(和你的代码)运作良好。
您没有注意到您的身体没有覆盖整个页面:
添加此CSS以使其正常工作:
html,
body{
width:100%;
height:100%;
}