我有一个页面上的链接列表,当用户点击一个链接时,我希望它突出显示,同时我希望剩下的链接不被注意。演示在http://api.jquery.com/toggleClass/下降的一半正是我想要的,但它允许您一次突出显示多个链接。任何人都可以告诉我需要调整什么才能使这个工作?非常感谢。jQuery toggleClass - 每次突出显示一个链接?
回答
我建议使用类似:
$('a').click(
function(e){
e.preventDefault; // don't follow the link
$('.highlight').removeClass('highlight');
$(this).addClass('highlight')
});
e.preventDefault;
停止链接后的浏览器。您可能或不可能希望删除此行。
$('.highlight').removeClass('highlight');
选择class
-name“突出”和的所有元件中删除该class
,使得仅一个链路可以在任一个时刻具有类。
$(this).addClass('highlight');
只是将类名'highlight'添加到this
元素(本例中为a
)。
参考文献:
没有喜悦与您的代码在我结束,但JS小提琴看起来很有用 - 非常感谢这么快分享这个。 – Chris 2011-05-02 10:28:32
我在这段代码的第一个版本中遇到了一个错字(我忘记关闭字符串$('a)',后来我对它进行了修改)。它是否适用于JS Fiddle? – 2011-05-02 10:30:54
在上面的演示中,你可以删除突出显示类上的所有元素,然后调用切换点击的元素:
$("p").click(function() {
$("p").removeClass("highlight");
$(this).addClass("highlight");
});
这里是jQuery的。
$('a').click(
function(){
$('a').removeClass('highlight');
$(this).addClass('highlight');
});
和卢西恩的答案一样! – mram888 2012-10-04 14:23:12
我使用了以下解决方案用于导航树,我有〜200个链接。它使用一个全局变量来保持前一资产净值的选择,其获得的选择器的清除,当用户移动到另一个链接:
var oldSelector = $(); // global var
$('a').on(click,
function(){
oldSelector.removeClass('selected');
$(this).addClass("selected");
oldSelector = currentSelector;
});
// css
.selected {
background-color: lightblue;
}
我不认为这是用此方法很多性能上的差异比什么@大卫托马斯提供,但这是做同样的事情的另一种方式。
- 1. jQuery一次突出显示一个
- 2. 突出显示link_to_remote链接
- 3. jQuery:突出显示与另一个链接具有相同href的链接
- 4. jquery点击链接时突出显示链接
- 5. 突出显示活动锚链接
- 6. 每个会话只显示一次jQuery
- 7. jQuery的toggleclass,除了链接
- 8. 突出显示活动链接
- 9. Android WebView链接突出显示问题
- 10. YUI3 Datatable行突出显示/链接
- 11. 突出显示链接不工作
- 12. NSTextView并突出显示链接
- 13. 突出显示活动链接
- 14. 单击一个链接,突出显示输入字段
- 15. 迭代选择列表以突出显示项目,依次突出显示每个项目
- 16. 突出显示一个tableViewCell
- 17. 每个访问者显示一次jQuery弹出式窗口
- 18. 突出显示jQuery手风琴菜单中的活动链接
- 19. 使用jquery突出显示导航菜单中的父链接
- 20. 使用jQuery突出显示活动链接
- 21. ASP.NET MVC突出显示链接点击表中的行
- 22. 仅突出显示每个单词的第一个字符
- 23. Lucene突出显示:突出显示一个令牌部分
- 24. kswedberg jquery平滑滚动插件 - 突出显示链接并删除滚动上的突出显示?
- 25. jQuery突出显示与ASP:UpdatePanel
- 26. JQUERY突出显示悬停
- 27. jquery突出显示菜单
- 28. jquery导航突出显示
- 29. 如何链接到另一页上突出显示的文本
- 30. 突出显示一个特定的DIV
检查: http://stackoverflow.com/questions/5057191/toggleclass-and-remove-class-from-all-other-elements – 2013-02-07 16:26:27