我正在尝试更新锚点中的<span>
,具体取决于您是否点击。如果你点击它并且幻灯片是打开的,那就是'navigateup',如果它没有激活,那就是'navigatedown'。
如果它是需要改变的整个锚,我有这个工作,但我只需要改变跨度。另外,我可以为它编写一个单独的脚本,但我认为最好将它包含在已经存在的jQuery中。
有什么想法吗?
我有这个HTML:
<li class="page_item page-item-29 parent"><a href="#">Clinical/Laboratory<span class="ss-icon navigation-drop-icon">navigatedown</span></a></li>
这是我的jQuery:
$(".sub-navigation li.parent > a").click(function(e) {
e.preventDefault()
$(this).text($(this).text() == 'navigateup' ? 'navigatedown' : 'navigateup');
$(this).closest('.parent').find("> .children").slideToggle(400);
});
谢谢, [R
答案 0 :(得分:2)
如果我理解你是正确的,你可以将span作为文本的选择器提供,然后使用this
作为上下文查看内容,如下所示:
$("span", this).text($("span", this).text() == 'navigateup' ? 'navigatedown' : 'navigateup');
jQuery函数允许您传递第二个参数,这是使用选择器时要查看的上下文。在这种情况下,范围选择器仅匹配单击元素中的span元素。
根据the documentation,上下文可以是:
用作上下文的DOM元素,文档或jQuery
我认为jQuery在幕后使用.find()
方法,因此在您的情况下,上面的示例只是$(this).find("span")
的简写