-1

我在我的网页上使用了 fancybox。并且还使用了另一个使用以下 javascript 文件的滑块

<script src="NewsSlider/Allmaritim.all.min.js" type="text/javascript"></script>

问题是,fancybox 无法正常工作。当我删除上面的 javascript 文件时,fancybox 工作正常。

有没有办法让javascript文件分开工作。

4

5 回答 5

4

问题可能是您在两个文件中定义了相似的函数[至少函数名称]。您的花哨的盒子是否附加到点击或加载事件?否则,请重新排序包含文件的方式:也就是说,在您的花哨的盒子脚本之后包含 Allmaritim.all.min.js。如果在加载之前不需要此文件,您也可以在页面底部包含!

于 2013-02-08T08:51:04.303 回答
1

他们可能都在使用 jquery

尝试jQuery.noConflict(true);在两个 javascript 调用之间调用两个脚本

于 2013-02-08T08:51:43.930 回答
0

您可以使用 $.noConflict(); 或 jQuery.noConflict();

于 2013-02-08T08:51:24.567 回答
0

有时 javascript 库变量,名称与其他名称冲突。与jQuery $ 变量一样,有时可能会与其他库发生冲突。他们[noConflict] 在这里提供了一个解决方案。因此,您需要阅读这些 javascript 库的文档以解决冲突问题。

于 2013-02-08T08:52:00.503 回答
0
<html><head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>
    <div id="log">
    <h3>Before $.noConflict(true)</h3>
    </div>
<script src="http://code.jquery.com/jquery-1.6.2.js"></script>
<script>
    var $log = $( "#log" );
    $log.append( "2nd loaded jQuery version ($): " + $.fn.jquery + "<br>" );
    jq162 = jQuery.noConflict(true);
    $log.append( "<h3>After $.noConflict(true)</h3>" );
    $log.append( "1st loaded jQuery version ($): " + $.fn.jquery + "<br>" );
    $log.append( "2nd loaded jQuery version (jq162): " + jq162.fn.jquery + "<br>" );
</script></body></html>

查看此示例代码。请参阅此链接以获取更多信息http://api.jquery.com/jQuery.noConflict/

于 2013-02-08T09:56:19.137 回答