很抱歉问这个问题,因为它可能会在互联网上被问过几次,但没有一个提议的解决方案在我的网站上有效。
我正在尝试使用 radio 流广告 jPlayer(作为大学项目的一部分)。
我在名为 functions.js 的文件中包含了 jPlayer 的 JavaScript - jQuery 部分:
// Reproductor de audio
$(document).ready(function(){
var stream = {
title: "Postaway Radio",
mp3: "http://listen.radionomy.com/1-PostawayRadio"
},
ready = false;
$("#jquery_jplayer_1").jPlayer({
ready: function (event) {
ready = true;
$(this).jPlayer("setMedia", stream);
},
pause: function() {
$(this).jPlayer("clearMedia");
},
error: function(event) {
if(ready && event.jPlayer.error.type === $.jPlayer.error.URL_NOT_SET) {
$(this).jPlayer("setMedia", stream).jPlayer("play");
}
},
swfPath: "js",
supplied: "mp3",
preload: "none",
wmode: "window"
});
});
这是文本的 HTML 部分:
<div id="jquery_jplayer_1" class="jp-jplayer"></div>
<div id="jp_container_1" class="jp-audio-stream">
<div class="jp-type-single">
<div class="jp-gui jp-interface">
<ul class="jp-controls">
<li><a href="javascript:;" class="jp-play" tabindex="1">play</a></li>
<li><a href="javascript:;" class="jp-pause" tabindex="1">pause</a></li>
<li><a href="javascript:;" class="jp-mute" tabindex="1" title="mute">mute</a></li>
<li><a href="javascript:;" class="jp-unmute" tabindex="1" title="unmute">unmute</a></li>
<li><a href="javascript:;" class="jp-volume-max" tabindex="1" title="max volume">max volume</a></li>
</ul>
<div class="jp-volume-bar">
<div class="jp-volume-bar-value"></div>
</div>
</div>
<div class="jp-title">
<ul>
<li>Postaway Radio</li>
</ul>
</div>
<div class="jp-no-solution">
<span>Update Required</span>
To play the media you will need to either update your browser to a recent version or update your <a href="http://get.adobe.com/flashplayer/" target="_blank">Flash plugin</a>.
</div>
</div>
</div>
我试图玩它,但它根本不起作用。我在 FireZilla 中收到此错误:
TypeError: $("#jquery_jplayer_1").jPlayer is not a function
Chrome 控制台抛出此错误:
Uncaught TypeError: Object [object Object] has no method 'jPlayer'
(anonymous function) functions.js:11
l jquery-1.8.3.min.js:2
c.fireWith jquery-1.8.3.min.js:2
v.extend.ready jquery-1.8.3.min.js:2
A
并将此行指示为问题:
`enter code here`$("#jquery_jplayer_1").jPlayer({
另一个jQuery。
但我无法找到问题是什么。
我下载了一个 jPlayer 演示,代码类似 - 和我的一样,但它在那里工作,而不是在我的网页中。还查看了开发人员(jPlayer)并没有找到解决方案。
有人可以帮我吗?
谢谢你的帮助
最佳答案
您可能没有包含 jplayer 库。再次检查演示,看看你是否正确加载了 jplayer js 文件。并在谷歌浏览器中检查控制台。
以及您使用哪种浏览器。如果浏览器不支持html5,它会加载flash player,但可能是swf 文件的地址不好。这是在这个参数中设置的 swfPath: "js"
试试这个:
$player = $("#jquery_jplayer_1")
jPlayer_method = $player.jPlayer
$player.jPlayer({
ready: function () {
jPlayer_method.call( $player, "setMedia", {
[...same as before...]
关于jquery-plugins - jPlayer 不是函数错误 - Stream Player,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14055579/