2010-12-21 201 views
1

问题很简单,但在我的实现中出现了一些错误。如何让一个元素响应另一个元素的点击? - CSS/jQuery

你可以看到我的执行here

所以我想要发生的是,当你点击方框#1中的一个名字时,虚线圆圈中的虚线和#1都变成黑色和实心。虚线不是边框。当您点击其他相应框中的任何其他数据时也会发生同样的情况。

我面临的主要问题是,当我在jQuery中使用.css函数手动更改颜色和边框时,它的效果很好。但是,我想用toggle类修改它(因为我无法使用toggle()来使用css函数) - 因此,当您单击一次时,您会看到突出显示的元素(带有1px边框 - 该功能已经存在),并且框(和虚线)的相应编号变成纯黑色。

谢谢。

回答

1

它看起来像JavaScript很好。我能看到的东西搞乱了唯一的办法就是这一行:

$('#bc1 dashed-circle').toggleClass('bc-dashed-to-solid-circle'); 

你要的是选择更改为。

破折号和数字不改变颜色的原因是因为特异性。你用选择器#blank-dashboard-breadcrumb span - 一个id和一个元素声明它们的正常颜色(#bdbebf)。您用.bc-dotted-to-solid.bc-dashed-to-solid-circle - 简单类声明“选定”颜色(黑色)。即使短划线和1有合适的班级,他们仍然有一个更具体的选择,告诉他们保持灰色。

+0

我知道我的问题是这样的。问题是......我该如何解决这个问题?我收录了你的解决方案,并没有做到我所需要的。关于如何实际获得我想要的功能的进一步建议?我认为你在正确的轨道上。 – marcamillion 2010-12-21 09:30:03

+0

那么,我注意到的另一件事是,你将点击监听器应用到所有不同的trs,但他们都只改变了第一个数字上的类。这是你所指的问题吗?当你说解决方案不能满足你的需求时,你的意思是什么? – sdleihssirhc 2010-12-21 17:21:30

+0

我的意思是,我正在寻找的功能是:当你点击其中一个名字时,我想要虚线和相应的数字来改变CSS。例如,当您点击“John Brown”时,我希望第一条虚线变黑并转为实线 - 我还希望“#1”变为黑色,而边框变为固定。这就是现在没有做的事情。我认为这与你指出的特殊性有关。但我很困惑如何解决它。 – marcamillion 2010-12-21 19:53:57

相关问题