Javascript 如何在没有jquery的情况下,将函数仅应用于一个特定div或类中的a标记
我在一个页面上有几个菜单,希望用户在每个菜单中单击的链接改变颜色并保持该颜色,直到用户单击该菜单中的另一个链接。我有以下代码: JavaScriptJavascript 如何在没有jquery的情况下,将函数仅应用于一个特定div或类中的a标记,javascript,css,html,Javascript,Css,Html,我在一个页面上有几个菜单,希望用户在每个菜单中单击的链接改变颜色并保持该颜色,直到用户单击该菜单中的另一个链接。我有以下代码: JavaScript function bookswitchColor(element, color) { links = document.getElementsByTagName("a"); for (var i = 0; i < links.length; i++) links.item(i).style.color = 'r
function bookswitchColor(element, color) {
links = document.getElementsByTagName("a");
for (var i = 0; i < links.length; i++)
links.item(i).style.color = 'red';
element.style.color = "#0E00EB";
}
函数颜色(元素,颜色){
links=document.getElementsByTagName(“a”);
对于(变量i=0;i
HTML
<div id="book" class="book">
<ul>
<li><a href="javascript:TheMenu()" onclick="bookswitchColor(this) ;">Menu</a>
</li>
<li><a href="javascript:book1()" onclick="bookswitchColor(this) ;">Book1</a>
</li>
<li><a href="javascript:book2()" onclick="bookswitchColor(this) ;">book2</a>
</li>
</ul>
</div>
-
-
-
除了更改整个页面上的a标记外,它还可以正常工作。此页面显示一个图书库。当用户单击其中一本书时,我需要该书保持高亮显示(颜色更改)。单击一本书将调用该书的章节列表,用户单击该列表可阅读该章节。我需要在不影响其他菜单的情况下保持突出显示(颜色更改)章节
我希望避免使用jQuery。您可以从任何元素节点使用
.getElementsByTagName()
var links = document.getElementById('book').getElementsByTagName('a');
只要换掉这条线
links=document.getElementsByTagName("a") ;
关于这一点:
var links = document.getElementById("book").getElementsByTagName("a");
我不明白为什么不使用jQuery:$('.book a')。单击(function(){$(this.css('color','#0E00Eb'))@Justinas这个用户显然根本不想使用jQuery。@我明白这一点,但有时他们不想使用它,因为他们不知道如何使用。@Justinas但有时,像这样,将jQuery用于单一目的只会降低性能。总是问自己