0

我是 Javasript 的新手,想了解如何访问特定元素。我有超过 20 首歌曲跨度的内容。如果我已经在脚本中的一个变量中拥有了跨度 ID,例如“歌曲 3”,我如何访问与该歌曲相关的“producedBy”类,更具体地说,是其中包含的文本,在这种情况下说“不管天气”。不改变底层 HTML?

非常感谢任何帮助以帮助理解 javascript。谢谢。

    <div class="Artist Song">
    <span id="song_1" class="song">   
       <span class="artistname">MJ</span>
        <span class="songname">Billie Jean</span>
        <span class="email" style="whatever"><strong>neverland@ranch.com</strong></span>
        <span class="recordlabel">def jam</span>
        <span class="age">34 years</span>
        <span class="album">Album:<strong>Bad</strong></span>
        <span class="dateReleased" style="display:none">whatever</span>
        <span class="producedBy" style="display:none">Produced by Quincy jones</span>
    </span>
</div>

<div class="Artist Song">
    <span id="song_2" class="song">   
       <span class="artistname">Prodigy</span>
        <span class="songname">Firestarter</span>
        <span class="email" style="whatever"><strong>firestarter@twisted.com</strong></span>
        <span class="recordlabel">whatever</span>
        <span class="age">whatever</span>
        <span class="album">Album:<strong>Fat of the land</strong></span>
        <span class="dateReleased" style="display:none">whatever</span>
        <span class="producedBy" style="display:none">whatever</span>
    </span>
</div>

<div class="Artist Song">
    <span id="song_3" class="song">   
       <span class="artistname">Whoever</span>
        <span class="songname">Whatever</span>
        <span class="email" style="whatever"><strong>whatever@wherever.com</strong></span>
        <span class="recordlabel">whatever</span>
        <span class="age">whatever</span>
        <span class="album">Album:<strong>Whatever</strong></span>
        <span class="dateReleased" style="display:none">whatever</span>
        <span class="producedBy" style="display:none">whatever the weather</span>
    </span>
</div>

<div class="Artist Song">
    <span id="song_4" class="song">   
       <span class="artistname">Whoever</span>
        <span class="songname">Whatever</span>
        <span class="email" style="whatever"><strong>whatever@wherever.com</strong></span>
        <span class="recordlabel">whatever</span>
        <span class="age">whatever</span>
        <span class="album">Album:<strong>Whatever</strong></span>
        <span class="dateReleased" style="display:none">whatever</span>
        <span class="producedBy" style="display:none">whatever</span>
    </span>
</div>

...
4

3 回答 3

2
document.getElementById("song_1").getElementsByClassName("producedBy")[0]
于 2012-08-06T21:58:05.827 回答
0
document.getElementById("song_3").getElementsByClassName("producedBy")[0].innerHTML

document.getElementById

getElementsByClassName

element.innerHTML

演示

于 2012-08-06T22:04:25.400 回答
0

使用jQuery进行简单的 dom 操作:

$("#song_1 > .songname").text()
于 2012-08-06T21:59:27.603 回答