带有jPlayer的Javascript模式
Javascript pattern with jPlayer
我只是构建了一个javascript模式,以便在web浏览器中使用jPlayer。像这个代码:
var myplayer = {}
myplayer.Controller = (function() {
var controller;
var player_state= "default";
var player = jQuery('#jquery_jplayer_2');
function createController(){
function initial(){
player.jPlayer({
solution: "flash, html",
supplied: "mp3",
swfPath: "/js"
});
}
function play(){
player.jPlayer("play");
}
return {
initial:function(){
initial();
},
play:function(){
play();
}
}
}
return {
getController:function(){
if(!controller){
controller = createController();
}
return controller;
}
}
我通过var mypl=myplayer.controller.getController().initial()调用它;它运行时没有任何错误或警告,但不是初始的jPlayer?这里有javascript经验的人请给我带路,非常感谢!我还检查javascript文件夹和mp3文件的路径是否有效。我在调用前和调用后编写了alert初始函数,它运行了,但仍然没有初始化jPlayer。请帮帮我,请!!!
你太狡猾了。看看这个演示的来源
http://jplayer.org/latest/demo-01/
并使用类似的东西。
下面的代码对我有用,所以如果有人感兴趣,我会在这里发布。我很感激任何人的评论。
var mypl = {};
mypl.player = (function(){
var myplayer;
var pl = jQuery("#jquery_jplayer_2").jPlayer;
function createPlayer(){
function initialPlayer(domitem){
if(domitem == undefined){
domitem = $("#jquery_jplayer_2");
}
domitem.jPlayer( {
ready: function () {
$(this).jPlayer("setMedia", {
mp3: "url_to_mp3_file"
});
},
solution: "flash, html",
supplied: "mp3",
swfPath: "path_to_swf_file_locate"
});
}
function setMedia(title,filepath){
jQuery("#jquery_jplayer_2").jPlayer("setMedia",{name:title,free:true,mp3:filepath});
}
function play(){
jQuery("#jquery_jplayer_2").jPlayer("play");
}
function pause(){
jQuery("#jquery_jplayer_2").jPlayer("pause");
}
function stop(){
jQuery("#jquery_jplayer_2").jPlayer("stop");
}
function volume(volume){
if(volume == undefined || volume < 0){
volume = 0.8;
}
jQuery("#jquery_jplayer_2").jPlayer("volume",volume);
}
function mute(){
jQuery("#jquery_jplayer_2").jPlayer("mute");
}
function unmute(){
jQuery("#jquery_jplayer_2").jPlayer("unmute");
}
function seek(seek){
if(seek == undefined || seek < 0){
seek = 0;
}
jQuery("#jquery_jplayer_2").jPlayer("playHead",seek);
}
return{
initialplayer:function(domitem){
initialPlayer(domitem);
},
setmedia:function(title,filepath){
setMedia(title,filepath);
},
play:function(){
play();
},
pause:function(){
pause();
},
stop:function(){
stop();
},
mute:function(){
mute();
},
unmute:function(){
unmute();
},
seek:function(){
seek();
}
}
}
return{
getPlayer:function(){
if(!myplayer){
myplayer = createPlayer();
}
else{
}
return myplayer;
}
}
})();
我这样称呼它:
var abc = mypl.player.getPlayer();
abc.initialplayer();
当你点击某个元素时,只需调用abc.play()或abc.stop()。我现在仍然无法使abc.pause()工作。希望尽快解决!!我已经把函数名从pause改为mypause,函数音量也改了,它运行了,但我仍然不知道为什么它不运行!!
相关文章:
- Javascript,访问一个主要对象模块模式中的每个对象
- 我是否可以检测到javascript正在被卸载(作为调试模式)
- 包含圆括号的JavaScript Regex模式
- 用于操纵DOM API的Javascript设计模式
- 用javascript创建一个看起来正常分布的模式
- 揭示模块模式(JavaScript) - 这无法访问私有方法
- 匹配每个字符,直到在行首出现模式(JavaScript)
- 用于处理成功、失败、重试的异步请求的设计模式?(JavaScript)
- 模块模式javascript不是函数
- 从自定义模块模式Javascript库调用XMLHttpRequest时不会发生任何事情
- 浏览器中的观察者模式javascript:订阅事件"添加了Dom元素“;并处理这个元素
- IE11在Iframe下的怪癖模式-javascript错误
- 返回具有链接模式javascript的项
- 命令模式 JavaScript 中的执行函数
- gsp下拉值返回NaN在IE7文档模式(javascript)
- 动态模式Javascript
- 保持服务器时间,即使在离线模式(javascript/html5)
- 我如何专业地构建我的模块模式Javascript项目
- 怪癖模式 - JavaScript 不会更新表单选择选项
- 设计模式- JavaScript.安全提取深层(可能不存在)对象属性的通用函数