抱歉这个可怕的标题,我不擅长用这些东西。
我认为我想做的事情很简单。
我有一组隐藏的字母组成一个单词。
下面是一些随机排列的字母。
当人们点击随机困惑的字母之一时,我会过滤隐藏的字母并显示相应的字母。
我需要做的是,如果有人点击一个字母,过滤隐藏的字母,要么返回“true”并显示该字母,要么返回“false/null”并发出警报();
这就是我目前的过滤方式。我很困惑应该在哪里放置 if 语句,或者这是否是我应该采取的方法。
这是一把 fiddle (隐藏的词是“Seal”)- http://jsfiddle.net/GA7WB/
var $buttons = $('#letters span'),
$hidden = $('.letter');
$buttons.click(function(){
_selected = $(this).html();
$hidden.filter(function() {
return $(this).text() == _selected;
}).show();
});
最佳答案
您只需要检查过滤器返回的结果的长度:
// get matched elements
var matches = $hidden.filter(function() {
return $(this).text() == _selected;
});
// show them, or alert if none
if (matches.length > 0) matches.show();
else alert("There are no " + _selected + "'s");
关于javascript - 如果具有相同的 html,则显示元素,如果没有,则发出警报,提示 "no results",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17821528/