javascript - 我正确使用“这个”吗?jQuery
问题描述
我正在处理一个点击事件 - 它隐藏了任何users
与点击的值不同的值。这是相关 HTML 的片段。
<div class="main">
<section class="tweets">
<div class="tweet">
<p class="time">Sun Mar 15 2020 20:04:53 GMT-0700 (Pacific Daylight Time)</p>
<p class="users" data="sharksforcheap">@sharksforcheap: </p>
<p class="message">last night i formulated a life #sxsw</p></div>
当我手动输入我的users
值时,:contains
它工作正常。例如,我将单击sharksforcheap
它,它将隐藏所有其他users
不属于它的内容。
$('.tweets').on('click', '.users', function(){
var user = $(this).data('users');
$('.tweet').not(':contains(sharksforcheap)').hide();
});
但是,我显然想让它适用于users
我点击的任何内容,因为对每个用户进行硬编码是不可行的。所以我创建了一个名为 user 的 var 并引用了它,this
它应该保存我的users
. 但是,这不起作用。
$('.tweets').on('click', '.users', function(){
var user = $(this).data('users');
$('.tweet').not(':contains('+ user + ')').hide();
});
我this
在这种情况下使用不正确吗?
解决方案
这是您需要指定data-users
属性以获取其值的方式.data("users")
:
<p class="users" data-users="sharksforcheap">@sharksforcheap: </p>
但似乎你需要的更容易实现
$('.tweet').not($(this).closest('.tweet')).hide();
推荐阅读
- javascript - 类型 'number' 不可分配给类型 'ReadonlyArray<{}>'
- ruby-on-rails - 如何使用 Ruby on Rails 5.2 编写复杂的连接查询?
- node.js - @azure/cosmos.js - 同步获取数据库
- javascript - 为什么传奇效应没有被调用?
- fortran - 如何创建具有给定度数分布的网络(图)?
- routes - 如何知道我的骆驼路线是否已启动并正在运行以处理来自队列的消息
- c# - 无法调用/加载 .NET Core 程序集,但 .NET Standard 在 PowerShell 中使用 Add-Type 可以正常工作
- perl - 循环遍历当前的哈希数组;构建一个新的哈希数组并忽略具有特定键 = 值的记录
- python - 如何在作为类对象的画布之间切换?
- php - 如何在 CakePHP 中创建一个使用 rest API 从数据库中检索数据的方法?