jQuery .text() values are empty - iframe

jQuery .text() values are empty - iframe

本文关键字:empty iframe are values text jQuery      更新时间:2023-09-26

我用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>

谢谢。

好的,我的建议是认真检查您的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播放器是iframe的id。

干杯。