Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery隐藏标题中没有$somestuff的图像_Javascript_Jquery - Fatal编程技术网

Javascript jQuery隐藏标题中没有$somestuff的图像

Javascript jQuery隐藏标题中没有$somestuff的图像,javascript,jquery,Javascript,Jquery,我正在尝试编写一个代码,其中页面上有数千个图像缩略图,用户希望快速重复地搜索它们 于是转向可靠的jQuery。我想出了以下代码: $(document).ready(function () { $('input[name="search"]').keyup(function(e){ console.log('checking...'); var $this = $(this); if($this.val().length > 3 |

我正在尝试编写一个代码,其中页面上有数千个图像缩略图,用户希望快速重复地搜索它们

于是转向可靠的jQuery。我想出了以下代码:

$(document).ready(function () {
    $('input[name="search"]').keyup(function(e){
        console.log('checking...');
        var $this = $(this);

        if($this.val().length > 3 || e.which == 8 || e.which == 46) {
           var check = 'img[title*="' + $this.val() + '"]';

           $.each($('.asset'), function() {
               $(this).show();
               $(this).not(check).hide();
           })

            console.log(check);
        } else {
            console.log('False');
        };
    });
});
这只是部分有效。它失败的位是
$(this).not(check).hide()只隐藏所有内容,而不选择标题中包含搜索查询的图像

有没有办法让jQuery完成这项任务

$('input[name="search"]').keyup(function(e){
    console.log('checking...');

    var search = $(this).val();
    if(search.length > 3 || e.which == 8 || e.which == 46) {
       $(".asset img").hide();
       $(".asset img[title*='" + search + "']").show();
    } else {
       console.log('False');
    };
});
选择器的问题是,
$(此)。not(检查)
检查
$(此)
是否与
检查
选择器匹配,但我猜
.asset
是包含IMG的div,而不是图像元素本身


选择器的问题是
$(此)。not(检查)
检查
$(此)
是否与
检查
选择器匹配,但我猜
.asset
是包含IMG的div,而不是图像元素本身。

我们需要一个HTML示例来给出确切的解决方案。您的图像是否在
.asset
中?他们有
asset
类吗?你能设置一个JSFIDLE吗?不要一直重复
$('input[name=“search”])
,这是一个昂贵的选择器——在处理函数中使用
$(this)
(更好的是,用
$this=$(this);
)将它分配给一个变量。编辑其他人的问题时,您不应该对代码进行结构更改。如果有必要,只需重新格式化,但添加变量是不合适的。我们需要一个HTML示例来给出确切的解决方案。您的图像是否在
.asset
中?他们有
asset
类吗?你能设置一个JSFIDLE吗?不要一直重复
$('input[name=“search”])
,这是一个昂贵的选择器——在处理函数中使用
$(this)
(更好的是,用
$this=$(this);
)将它分配给一个变量。编辑其他人的问题时,您不应该对代码进行结构更改。如果有必要,只需重新格式化,但添加变量是不合适的。由于没有代码,因此无法确定资产和图像html结构,但这是一个更干净/更快的逻辑。症状强烈表明这就是问题所在。谢谢,这很好地工作,您认为html无法确定资产和图像html结构是正确的,因为没有代码,但这是一个更干净/更快的逻辑。症状强烈表明这就是问题所在。谢谢,这很有效,您认为html是正确的