-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 に答える