0

我正在使用 RoR,并从 JQuery 将 JPlayer 添加到我的项目中。我将它添加到文件夹资产中,在 html 中我有这个:

<title>jPlayer as an audio player</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <link href="/jPlayer/skin/pink.flag/jplayer.pink.flag.css" rel="stylesheet" type="text/css" />

    <script type="text/javascript">
        //<![CDATA[
        $(document).ready(function(){

            $("#jquery_jplayer_1").jPlayer({
                ready: function () {
                    $(this).jPlayer("setMedia", { mp3:"http://www.jplayer.org/audio/mp3/TSP-01-Cro_magnon_man.mp3"});
                },swfPath: "js",supplied: "mp3",wmode: "window"

            });
        });
        //]]>
    </script>

但我得到这个错误:

未捕获的类型错误:对象 [对象对象] 没有方法“jPlayer”

在这一行:$("#jquery_jplayer_1").jPlayer({

O 将对应的gem添加到Gem文件中,所以不知道会出什么问题。任何想法?谢谢!

4

2 回答 2

1
  1. 确保您的脚本被拉入页面,一种检查方法是使用 Chrome 调试器/FireFox Firebug 中的“源”选项卡并搜索文件。

  2. 确保在包含 jQuery 之后包含脚本,因为它肯定依赖于它。

  3. 确保您只包含了一个 jQuery 库。包含多个版本可能会导致问题。

  4. 如果有其他一些库覆盖$,那么您的代码将无法正常工作,因为$它不再是别名jQuery。您可以使用它jQuery.noConflict()来避免与页面上使用相同变量的其他库发生冲突$

于 2013-03-11T08:35:35.047 回答
0

两天后我解决了这个问题,我忘了把这个文件包含jquery.jplayer.min.jsactive_admin.rb. 它只是添加: config.register_javascript 'jquery.jplayer.min.js'

小错误,但花了很多时间!

于 2013-03-12T10:16:14.177 回答