类型错误:$(...)。滑块不是一个函数。

25

有没有一种依赖于服务器的jquery滑块?我正在使用jquery库和Ui来制作jquery范围滑块。由于只有一个jquery库,所以我认为不会有任何冲突问题。在我的Linux服务器上,滑块正常工作并输出正确结果。但是当我将代码推到IIS服务器上时,在Mozilla浏览器中出现错误,错误消息为TypeError:$(...).slider不是函数,在Chrome浏览器中出现Uncaught TypeError:未定义的函数。我只是想知道服务器是否可能是原因。 :( 如果有人遇到类似的问题,请建议。

$(document).ready(function() {
        $("#slider").slider({
          range: "min",
          animate: true,
          value:0,
          min: 0,
          max: 30,
          step: 1,
          slide: function(event, ui) {
            update(2,ui.value); //changed
          }
      });}

1
使用像Fiddler2或Chrome F12调试工具这样的网络工具来查看实际从服务器加载了什么。可能只是未能返回您的JS文件之一。 - iCollect.it Ltd
也许是其他脚本(在滑块上方)导致错误,阻止了其下方脚本的执行。创建一个仅包含基本数据(js + css + html)的演示页面以使滑块正常工作并进行测试。在Firefox中,在控制台中,您会得到TypeError..在哪个文件中? - andrew
@andrew 感谢您的快速回复.. 但我认为上面的脚本没有错误,因为它在 Linux 服务器上运行得非常正确(该网站已上传到 Linux 和 IIS 服务器)。我是从 HTML 文件中调用 slider() 函数。 - gintech
@RahulUkil 或许在 IIS 环境中存在与其他 JavaScript 脚本兼容性问题 - 这就是我所说的。这就是为什么我建议您制作一个最小的幻灯片页面,以检查它是否正常运行。 - andrew
听起来你没有包含jQuery或jQueryUI。 - simey.me
如果你只包含了核心的 jQuery UI,那么你还需要添加滑块模块。 - Lyubomir
4个回答

36

同时使用Jquery和ui,它就可以工作。

<script src="//code.jquery.com/jquery-1.10.2.js"></script>
<script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>

为我工作。我测试任何东西。 - henrry

9

我遇到了同样的错误信息。最后发现我的代码加载了两次jQuery,其中一份版本太老了。确保只链接了一个新版本的jQuery到我的代码中后,错误就消失了。

也许你的服务器(IIS服务器)提供了一个过时的jQuery版本?

所以请检查你正在使用的jQuery版本。这个版本对我来说是正常运行的:

<script src='http://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js'></script>


谢谢这个答案。我遇到了同样的问题并尝试包含jQuery和jQuery UI的非"slim"版本,但这并没有解决它。结果是有两个版本的jQuery在加载! - Effie Makri

1

请确保您没有多次包含jquery.js库。

检查您在页面中包含的其他js打包文件内部。


1
对于我来说,运行Rails时,您可以单独指定列出哪些jQuery UI元素,而我在流程中没有滑块。添加它就解决了问题!

你实际上是怎么添加的?我很困扰。 - Ahsan Horani

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接