javascript - 为什么我的 jQuery 过滤器函数中的测试没有按预期工作?
问题描述
我在过滤器中使用了一个函数来检查显示模式是否为块但它不起作用。
这是我的代码:
$("#wrap_element").find("*").filter(function(){
return this.css("display")==="block";
}).css("background-color","red");
谢谢。
解决方案
您有一个提示问题的控制台错误:
未捕获的 TypeError:this.css 不是函数
您需要使用 jQuery 对象,因为您在其上调用 jQuery 方法:
return $(this).css("display")==="block";
// ----^^----^
推荐阅读
- regex - 用于通过 5.0 和失败 5.1 的正则表达式
- git - 推送到功能分支而不合并
- bash - 如何选择匹配文件的每一行并对其进行操作?
- php - CakePHP - 实体对象不可访问
- angular - 如何将角材料 MatPaginator 升级到版本 8
- javascript - 如何从 json 文件 ArcGIS API for JavaScript 将 GeoJSONLayer 添加到地图?
- python - 如何使用 KNN 和 Scikit-Learn 找到项目之间的相对相似性/差异?
- django - 使用来自 Django 应用程序的自定义身份验证来验证对 Django Rest Framework 的访问
- javascript - 为什么它只显示第一个输入?
- java - Java 8 lambdas 将列表分组到映射中 - 如果每个键有多个列表项,则使用不同的键