改变var的值?

时间:2014-05-23 16:21:36

标签: jquery jplayer

@Walter好的,我确实接受了你的建议,开始了代码学课程,到目前为止完成了50项任务。现在学习很好,我会继续整个课程。但是要明白我不是一个IT人员或学生,我今年46岁,只经营一个简单的广播网站。现在你说“stackoverflow”不适合初学者,但是后来尝试google for awers,所有点击的90%都转到stackoverflow。如上所述,我将继续关于codecademy的课程,但是现在有人可以帮我解决下面的问题吗?

我想在我的广播页面上创建一个按钮,以便人们可以在不同的频道之间切换,但我不知道从哪里开始。我想在jquery中创建一个带onclick函数的按钮,并且它改变了“mp3”的值,但是怎么样?

我在脚本的底部尝试了这个但是没有做任何事情;

$("#button_pop").click(function(){
    stream.mp3 = "http://212.83.178.251:8000/stream";
});

这是当前的代码;

$(document).ready(function(){

var stream = {

    title: "FSN Radio",
    mp3: "http://212.83.178.251:8050/stream"
},

ready = false;

$("#jquery_jplayer_1").jPlayer({

    ready: function (event) {

        ready = true;

        $(this).jPlayer("play", stream);

    },

    pause: function() {

        $(this).jPlayer("clearMedia");

    },

    error: function(event) {

        if(ready && event.jPlayer.error.type === $.jPlayer.error.URL_NOT_SET) {

            // Setup the media stream again and play it.

            $(this).jPlayer("setMedia", stream).jPlayer("play");
        }
    },
    swfPath: "js",
    supplied: "mp3",
    preload: "none",
    wmode: "window",
    volume: 0.02,
    solution: 'html,flash',
    keyEnabled: true
});

});

3 个答案:

答案 0 :(得分:0)

这是scope的问题。要修复它,请移动

var stream = {

    title: "FSN Radio",
    mp3: "http://212.83.178.251:8050/stream"
},

ready = false;

$(document).ready(function(){区块之外。

答案 1 :(得分:0)

好吧,也许不是最好的解决方案,但这对我有用,我的代码现在以;

开头
var stream = {

    title: "FSN Radio",
    mp3: "http://212.83.178.251:8050/stream"

}

ready = false;

var stream2 = {

    title: "FSN Radio",
    mp3: "http://212.83.178.251:8000/stream"

}

ready = false;

(文档)$。就绪(函数(){

$("#button_pop").click(function(){
    $("#jquery_jplayer_1").jPlayer("setMedia", stream).jPlayer("play");
}); 

$("#button_pop2").click(function(){
    $("#jquery_jplayer_1").jPlayer("setMedia", stream2).jPlayer("play");
});

答案 2 :(得分:0)

这样做的一种方法可能如下:

a /创建一个初始化广播的功能:

function start_stream(player) {
    $("#jquery_jplayer_1").jPlayer({

    ready: function (event) {

        ready = true;

        $(this).jPlayer("play", stream);

    },

    pause: function() {

        $(this).jPlayer("clearMedia");

    },

    error: function(event) {

        if(ready && event.jPlayer.error.type === $.jPlayer.error.URL_NOT_SET) {

            // Setup the media stream again and play it.

            $(this).jPlayer("setMedia", stream).jPlayer("play");
        }
    },
    swfPath: "js",
    supplied: "mp3",
    preload: "none",
    wmode: "window",
    volume: 0.02,
    solution: 'html,flash',
    keyEnabled: true
    });
}

b /在此之前,您已经创建了不同的变量(流),如下所示:

var stream = {

    title: "FSN Radio",
    mp3: "http://212.83.178.251:8050/stream"
},

ready = false;

c /然后,无论何时想要更改收音机中的流,您都可以进行以下调用:

jQuery('#jquery_jplayer_1').jPlayer("destroy");
start_stream(stream); // Being "stream" the variable with the data you want to play