【问题标题】:slimScroll is not defined on Browser Back Button浏览器后退按钮上未定义 slimScroll
【发布时间】:2014-03-14 02:53:41
【问题描述】:

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

Uncaught TypeError: Object [object Object] has no method 'slimScroll'

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

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

注意:我尝试将代码包装在 $(document).ready()$(window).load() 周围。这也无济于事。

【问题讨论】:

    标签: javascript jquery slimscroll


    【解决方案1】:

    首先,通过在控制台输入 jQuery 来查看是否定义了 jQuery。如果是,试试这个: 尝试将其包装在:

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

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

    【讨论】:

    • 工作就像一个魅力。谢谢阿兰!我应该去了解更多关于“$”作为函数参数的信息。
    • 这样做的原因是您将 jQuery 对象作为参数传递,并将要在函数内部使用的 $ 定义为 $ = jQuery;。问题是 $ 可能没有定义,要么是因为您使用的是 noConflict,要么是由于其他原因。考虑通过你的代码来弄清楚。
    • 我明白了!非常感谢你的解释,阿兰。
    【解决方案2】:

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

    您也可以尝试使用 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>
    

    【讨论】:

      【解决方案3】:

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

      1.使用这个 npm:npm install 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>
      

      4.使用下面的slimscroll

      $('#content').slimScroll({
              height: '250px',
              color:'#F44336'
          });
      

      【讨论】:

        猜你喜欢
        • 2013-03-02
        • 1970-01-01
        • 2014-08-14
        • 2011-02-17
        • 1970-01-01
        • 2012-07-09
        • 1970-01-01
        • 2017-06-29
        • 2013-01-10
        相关资源
        最近更新 更多