【发布时间】:2013-11-16 19:19:06
【问题描述】:
...为我的混蛋编码提前道歉,我仍在玩弄这个。简而言之,我试图拥有 3 个(将来可能更多)按钮,当单独单击这些按钮时,会显示具有特定 .class 名称的所有 div(同时隐藏具有其他特定 .class 名称的其他 div)。类似于伪造的内容切换系统。
$("#mr-button-01").click(function() {
$(".key-01").css({ "background":"#ff00ff" }).animate( "slow" );
$(".key-02, .key-03").removeAttr('style');
$(".info-01").show();
$(".info-02, .info-03").hide();
return false;
});
现在,mr-button-01 和 key-01 是相同的元素(只是用于样式的 id 和 class)。对每个不同的按钮重复此代码,只需关闭或关注 other "info" 类。可能不是最好的行动计划,但每个按钮都有不同的功能,并且具有不同的“激活”.css 样式,所以我不知道还有什么方法可以处理。
原点:我试图弄清楚如何检查页面上是否存在“.info-01”。如果没有,我们保留,但一起取消切换按钮。比如……
if
.info-01 DOES exist
proceed with original ridiculous 'click sorting' thing
else
.info-01 DOESN'T exist on the page
.#mr-button-01 click does nothing
.key-01 (aka #mr-button-01) has a "dead" .css style applied to it
我知道有 ':not' 和其他一些选项 - 我只是不清楚语法或处理此问题的最佳方法。任何帮助将不胜感激,并随时提出替代方法,更简洁的方法来消除膨胀等。
HTML,非常基础:
<div id="nigga">
<a href="#" id="mr-button-01"><div class="key-01">Choice 01</div></a>
<a href="#" id="mr-button-02"><div class="key-02">Choice 02</div></a>
<a href="#" id="mr-button-03"><div class="key-03">Choice 03</div></a>
</div>
【问题讨论】:
-
所以这是我第一次被一个非常可怜的,即使是“讽刺”的属性值选择冒犯。
标签: javascript jquery css toggle show-hide