繁体   English   中英

为什么jQuery在一页而不是另一页上起作用?

[英]Why does jQuery work on one page and not another?

我在一个网站上使用了许多jQuery脚本,包括Fancybox。 一切正常,除了在带有表单的页面上。 我以前从未见过与jQuery发生静态表单冲突的情况。 起初我以为这是通向jQuery的道路,但是有些页面处于同一级别,一个页面可以工作,而另一个页面则不能。

例如,在此页面上 ,如果单击ArtStart,我们的新闻 Fancybox可以正常工作,但是如果在此页面上执行相同的操作,则Fancybox中不会打开相同的表单,并且出现以下错误:

Fancybox不是功能

通常,这告诉我到jquery.fancybox的链接已损坏或存在冲突。 我已将$更改为jQuery以防止发生冲突,但并没有任何区别。 同样,所有页面都从相同的嵌入式代码中提取脚本链接。

这是Fancybox的代码:

<script>
        jQuery(document).ready(function() {
            jQuery(".fancybox").fancybox({
            openEffect  : 'none',
            closeEffect : 'none',
            width       : 600,
            height      : 800
            });
        });
</script>

我将为解决此问题提供帮助。

谢谢

您的头中有3个jQuery(document).ready实例。请尝试将所有脚本移动到一个jQuery(document).ready这应该可以解决无法识别.fancybox方法的问题。

是的,您有几个jQuery(document).ready,其中一些明确为$别名,而其他则没有。

此外,在代码中间的某个地方,您将再次加载jQuery

<script type="text/javascript" charset="utf-8" src="http://opteracreative.com/~mac/?ACT=10&ui=core,widget,mouse,position,draggable,resizable,button,dialog,datepicker&plugin=markitup,toolbox.expose,overlay,tmpl&file=underscore,cp/date&v=1388434578&use_live_url=y&include_jquery=y"></script>

我相信全局jQuery对象确实会加载其插件,但是就在那时,您将其替换为一个没有插件的新对象。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM