@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
});
});
答案 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