【发布时间】:2019-06-30 13:21:33
【问题描述】:
所以,我正在学习一些 jQuery,我决定将朋友提出的请求用作训练场。 I'm trying to create a script for greasemonkey that when a selected user posts something in a thread on the Overwatch forums: (https://us.forums.blizzard.com/en/overwatch/c/general-discussion) it hides that specific comment from the entire thread.
相关论坛通过名为data-user-id="XXXX" 的标签识别用户,这是我在选择要隐藏的帖子时想用作脚本目标的标签
预期的行为是,当脚本运行并通过我提供的用户 ID 发现某个用户写了一些东西时,它只会将其整个帖子隐藏在我当前正在阅读的线程中。
这些是我做的一些实验:
//Experiment 1
$('#post_2:contains("data-user-id="XXXX"")').remove();
//Experiment 2
$('.boxed.onscreen-post:contains("XXXX")').remove();
//Experiment 3
$("#post_2 > .boxed.onscreen-post:contains('XXXX')").remove();
我在使用动态 ID 的概念来定位有问题的元素并使其读取 div 的内容以查找用户的 ID 时有点挣扎。
这些查询确实没有给我任何错误,所以我的猜测是他们找不到执行操作所需的文本字符串。
【问题讨论】:
-
你为什么不尝试使用css选择器包含?字面上不是 :contains 而是 *[id^=post]