-2

使用 jQuery 将值分配给变量时,我的行为非常奇怪。我无法从 .text() 中获取值。其他网站上的其他功能有效。只是 Spotify 是问题所在。即使加载了元素,它也不会取出东西。

功能:

    function getTrackSpotify() {
    var track;

    track = $("#radio-artist .outgoing").text() + " - " + $("#radio-track .outgoing").text(); // both elements are empty. please check all code in pastebin.
    console.log(track);
    return track;
}

我今天编码了10个小时,可能是我的大脑被烧得太厉害了,我什么都看不到..

HTML:

<div id="radio-track-info">
<h2 id="radio-track">
    <a class="outgoing" href="https://play.spotify.com/album/3g18ADJiQO3BNLIVZRENb1/track/04o7SCGvDEjIxinhTU4nxL/action/select">
  You See Me
</a>
</h2>
<h2 id="radio-artist">
    <a class="outgoing" href="https://play.spotify.com/artist/73sIBHcqh3Z3NyqHKZ7FOL">
  Childish Gambino
</a>
</h2>

谢谢你。

4

1 回答 1

0

好的,我的建议是非常努力地检查你的 DOM。就我而言,我有 10 个 DOM Iframe,所以我永远无法访问正确的元素。我最后是怎么做到的:

    function getTrackSpotify() {
    var artist;
    var title;

    if($('#app-player').length > 0){
            artist = $('#app-player').contents().find("#player").find("#track-artist").text();
            title = $('#app-player').contents().find("#player").find("#track-name").text();
    }

    return (artist != '') ? artist + ' - ' + title + ' - Spotify' : 'Music for every moment - Spotify';
}

...其中 #app-player 是 iframe 的 ID。

干杯。

于 2013-08-24T20:05:28.090 回答