Javascript “浏览器后退”按钮上未定义slimScroll

Javascript “浏览器后退”按钮上未定义slimScroll,javascript,jquery,slimscroll,Javascript,Jquery,Slimscroll,我有一个使用jquery.slimscroll的基本代码,它在页面加载时工作得非常好。但如果我导航到内部页面并尝试使用浏览器上的“后退”按钮返回,则会出现以下错误: 未捕获的TypeError:对象[Object Object]没有方法“slimScroll” 我已经检查了元素的长度,并确认该对象存在。我的jQuert就这么简单: <script type="text/javascript"> $("#boxsrchome").slimScroll(); </scrip

我有一个使用jquery.slimscroll的基本代码,它在页面加载时工作得非常好。但如果我导航到内部页面并尝试使用浏览器上的“后退”按钮返回,则会出现以下错误:

未捕获的TypeError:对象[Object Object]没有方法“slimScroll”

我已经检查了元素的长度,并确认该对象存在。我的jQuert就这么简单:

<script type="text/javascript">
    $("#boxsrchome").slimScroll();
</script>

$(“#boxsrchome”).slimScroll();

注意:我尝试将代码包装在$(document.ready()$(window.load())周围。这也没有帮助

首先,通过在控制台中输入jQuery来查看是否定义了jQuery。如果是,请尝试以下操作: 尝试将其包装为:

(function($) {
    $("#boxsrchome").slimScroll();
})(jQuery);

如果不是,则说明您在包含文件的方式上有问题。另外,确保没有在错误的位置包含slimscroll.js,并确保没有使用
jQuery.noConflict()重新定义jQuery对象任何地方,但是,这与此方法无关

由于文件路径错误或文件名错误,浏览器似乎无法加载您的
slimScroll
插件。尝试使用firebug
或chrome developer工具检查文件是否正确加载

您还可以尝试使用Github的直接链接,因此您的代码应该如下所示:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script src="https://raw.github.com/rochal/jQuery-slimScroll/master/jquery.slimscroll.min.js"></script>
<script>
    jQuery(document).ready(function($) {
        $("#boxsrchome").slimScroll();
    });
</script>

jQuery(文档).ready(函数($){
$(“#boxsrchome”).slimScroll();
});

按照以下步骤操作,它肯定会工作

1.使用此npm:
npm安装jquery slimscroll

2.使用以下代码更新.angular cli.json文件

"scripts": [
        "../node_modules/jquery/dist/jquery.min.js",
        "../node_modules/jquery-slimscroll/jquery.slimscroll.min.js"
      ],
3.html结构

<div id="content">
<p>Lorem ipsum dolor sit amet, consectetur .... snip</p>
</div>

工作得很有魅力。谢谢阿兰!我应该进一步了解“$”作为函数参数的情况。之所以这样做,是因为您将jQuery对象作为参数传递,并将要在函数中使用的$定义为$=jQuery;。问题是,$可能没有定义,这可能是因为您使用的是noConflict,也可能是因为其他原因。考虑一下你的代码,找出答案。我明白了!非常感谢你的解释,阿兰。
$('#content').slimScroll({
        height: '250px',
        color:'#F44336'
    });