两个javascript文件冲突

时间:2013-02-08 08:45:42

标签: php javascript jquery asp.net web-deployment

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

<script src="NewsSlider/Allmaritim.all.min.js" type="text/javascript"></script>
问题是,fancybox无法正常工作。当我删除上面的javascript文件然后fancybox工作正常。

有没有办法让javascript文件单独工作。

5 个答案:

答案 0 :(得分:2)

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

答案 1 :(得分:1)

他们可能都在使用jquery

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

答案 2 :(得分:0)

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

答案 3 :(得分:0)

有时javascript库变量,名称与其他人冲突。和jQuery一样 $ variable有时会与其他库冲突。他们提供[noConflict] here的解决方案。因此,您需要阅读这些javascript库的文档以解决冲突问题。

答案 4 :(得分: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/