我有一个使用 jQuery 的 Ruby Rails 应用程序,并且正在尝试加载插件,但它不起作用;脚本以“正确”的顺序加载(即,jquery、jquery_ujs、插件、自己的脚本),但任何插件函数(特别是测试 NiceScroll 和 jScrollPane)都会失败,并显示“类型错误:‘未定义’不是函数”。在 Web Inspector 中,我可以看到插件脚本在 jQuery 脚本之后成功加载,但我根本无法让它工作。
jQuery 本身工作得很好,事实上 Turbolinks 和 jQuery Turbolinks 也工作得很好。然而,试图打电话给“$('.something').niceScroll ”(或任何其他插件)会产生上述类型错误。
这是我的 application.js:
//= require jquery
//= require jquery_ujs
//= require bootstrap
//= require turbolinks
//= require jquery.turbolinks
//= require socket.io
//= require jquery.jscrollpane.min
//= require jquery.mousewheel
//= require auctions
Run Code Online (Sandbox Code Playgroud)
当放置在应用程序布局中时,会生成以下(部分)html:
<head>
<title>Slamlaunch</title>
<link href="/assets/application.css?body=1" media="all" rel="stylesheet" type="text/css">
<link href="/assets/active_admin.css?body=1" media="all" rel="stylesheet" type="text/css">
<link href="/assets/auctions.css?body=1" media="all" rel="stylesheet" type="text/css">
<link href="/assets/marketing/marketing.css?body=1" media="all" rel="stylesheet" type="text/css">
<link href="/assets/patches.css?body=1" media="all" rel="stylesheet" type="text/css"> …Run Code Online (Sandbox Code Playgroud)