jQuery错误声明jQuery插件函数;不是一个函数;

jQuery错误声明jQuery插件函数;不是一个函数;,jquery,jquery-plugins,center,Jquery,Jquery Plugins,Center,我正在使用一个jQuery.Center()插件,我在的网站上找到了这个插件 我在页面上有一个控件,名为“DecliclipBoots”,当用户点击链接时,我希望出现在屏幕中间。 我调用函数 $('#divClipboard').center() 它抛出一个错误,消息是 $(“#div剪贴板”)。中心不是 作用 我认为值得一提的是,我已经尝试过 jQuery.noConflict(); jQuery('#divClipboard').center(); 我还将center()重命名为cente

我正在使用一个jQuery.Center()插件,我在的网站上找到了这个插件

我在页面上有一个控件,名为“DecliclipBoots”,当用户点击链接时,我希望出现在屏幕中间。

我调用函数

$('#divClipboard').center()

它抛出一个错误,消息是

$(“#div剪贴板”)。中心不是 作用

我认为值得一提的是,我已经尝试过

jQuery.noConflict();
jQuery('#divClipboard').center();
我还将
center()
重命名为
centerElement()
,但没有用

我们的设置有两个指向同一虚拟目录的站点,每个站点由不同的URL访问。这个插件一直对我有效,直到昨天在一个站点上(它甚至可以在同一虚拟目录的另一个站点上工作)

有人知道会出什么问题吗

谢谢


Dave

您是否确保jQuery已加载,然后插件已加载? 还要确保.center()调用位于jQuery加载的包装函数中

jQuery(function(){
  jQuery('#myClickableElement').click(function(){
    jQuery('#divClipboard').center();
  });
});

事实证明,发生这种情况的原因是(正如我所提到的),我们有两个网站,每个网站的内容略有不同

现场A工作正常,但现场B损坏。这是因为站点A使用的包装器没有对jQuery文件的引用。站点B确实有一个参考。因此,因为我将center()代码保存在jquery文件中,站点B的包装器也提供了jquery代码,所以我的jquery代码从未被引用


解决方案是什么?将我的中心()插件放在它自己的文件中

听起来这个插件不包括在失败的站点上。与当前页面的URL相比,您是否检查了路径?你使用
标签吗?这个插件包含在失败的站点上,因为我可以按照URL找到它所在的文件。jQuery和pluggins都在同一个文件中,所以只要$。行得通(其他东西也行),我确信.center()代码是可用的。太好了。这就消除了最明显的错误:)是的,我确信这一点,因为我将插件代码作为jQuery代码所在文件的一部分。一切都存在于document.ready()函数中,此函数调用是标记上事件处理程序的一部分。这绝对是正确的,因为除了这个网站之外,它在其他任何地方都可以使用。我认为代码范围之外有问题,但我不知道可能是什么。