0

考虑这个 HTML:

<span class="leagueTogglehome">
 <img src="/images/formLeagueAll.png" id="Up" class="homeLeagueSwitch" />
 <img src="/images/formLeague.png" id="Down" class="homeLeagueSwitch" />
</span>

我想使用 Jquery 隐藏两个按钮之一:

$('span.leagueTogglehome img#Up').hide();
$('span.leagueTogglehome img#Down').hide();

实际发生的是另外两个具有“向上”和“向下”ID 的图像被隐藏了。它们在不同类的容器中,所以为什么要隐藏它们而不是我打算隐藏的两个。我什至为我想隐藏的按钮包含了父类包含的类。

这没有意义吧?

“其他” img 标签:

<span class="toggle" id="home">
 <img src="/images/formHomeUp.png" id="Up" class="homeToggleResults"/>
 <img src="/images/formHomeOverallUp.png" id="Down" class="homeToggleResults"/>
</span>
4

2 回答 2

1

根据 w3,每个 html page 应该是唯一id的。

是 jquery 本身关于使用 id 进行选择的内容:

每个 id 值只能在文档中使用一次。如果为多个元素分配了相同的 ID,则使用该 ID 的查询将仅选择 DOM 中第一个匹配的元素。但是,不应依赖此行为;具有多个使用相同 ID 的元素的文档无效。

所以我猜“其他img标签”出现在你试图修改的那个之前的dom中?

于 2013-08-12T19:37:29.950 回答
0

我所做的是/可能是我的错误,我很累并且引用了错误的父 DIV。我不知道对于 valdi amrk-up 页面上的所有 ID 都必须是唯一的。我认为只有使它们在父母中独一无二是有效/必要的。

于 2013-08-12T19:57:34.007 回答