用于动态数据的java脚本循环

时间:2016-05-25 08:47:32

标签: javascript jquery

我想在给定的java脚本中进行循环,以便从歌曲等文件夹中动态获取数据,

<script type="text/javascript">
        Amplitude.init({
            "songs": [
                {
                    "name": "Living Proof",
                    "artist": "Gregory Alan Isakov",
                    "album": "The Weatherman",
                    "url": "HH.mp3",
                    "live": false,
                    "cover_art_url": "images/theweatherman.jpg"
                },

            ],
            "default_album_art": "images/no-cover-large.png",
            "callbacks": {
                "after_init": "album_change",
                "after_album_change": "album_change",
                "after_song_ended": "album_change"
            }
        });

        function album_change(){
            var activeSong = Amplitude.getActiveSongMetadata();

            $('.album-display').hide();
            $('.album-container').removeClass('active-album-container');

            switch( activeSong.album ){
                case 'The Weatherman':
                    $('.the-weatherman-display').show();
                    $('.the-weatherman').addClass('active-album-container');
                break;
                case 'Rooms For Adelaide':
                    $('.rooms-for-adelaide-display').show();
                    $('.rooms-for-adelaide').addClass('active-album-container');
                break;
                case 'The Suburbs':
                    $('.the-suburbs-display').show();
                    $('.the-suburbs').addClass('active-album-container');
                break;
            }
        }
        $('.album-container').click(function(){
            $('.album-display').hide();
            $('.album-container').removeClass('active-album-container');

            if( $(this).hasClass('the-weatherman') ){
                $('.the-weatherman-display').show();
                $('.the-weatherman').addClass('active-album-container');
            }

            if( $(this).hasClass('rooms-for-adelaide') ){
                $('.rooms-for-adelaide-display').show();
                $('.rooms-for-adelaide').addClass('active-album-container');
            }

            if( $(this).hasClass('the-suburbs') ){
                $('.the-suburbs-display').show();
                $('.the-suburbs').addClass('active-album-container');
            }
        });
    </script>

1 个答案:

答案 0 :(得分:0)

如果你的意思是如何为json数据进行循环,你可以使用jQuery中的$ .each()方法,或者使用本机JS的forEach。

请参阅: jQuery:http://api.jquery.com/jquery.each/

原生JS:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/forEach