1

jquery fancy box の実装に大きな問題があります。含めたいページでjqueryタブを使用していますが、fancyboxと競合していると思います。このエラーが発生しています: $("#various1").fancybox は、私が数回チェックした関数ではなく、パスの問題ではなく、単に競合の問題です。<head>タグには次のスクリプトが含まれています。

<script type="text/javascript" src="./js/jquery.min.js"></script>   
<script type="text/javascript" src="./js/jquery.tools.min.js"></script>    
<script type="text/javascript" src="./js/jquery-1.7.1.min.js"></script>    
<script type="text/javascript" src="./js/primary.js"></script>    

<link href="js/fancybox/jquery.fancybox-1.3.4.css" rel="stylesheet" type="text/css" media="screen" />    
<script>!window.jQuery && document.write('<script src="js/jquery-1.4.3.min.js"><\/script>');</script>    
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>    
<script type="text/javascript" src="js/fancybox/jquery.fancybox-1.3.4.pack.js"></script>    
<script type="text/javascript">
$(document).ready(function() {
$("#various1").fancybox({
        'titlePosition'     : 'inside',
        'transitionIn'      : 'none',
        'transitionOut'     : 'none'
    });
});
</script>

jQuery.noConflict(); を追加してみました。このような

<script type="text/javascript">
jQuery.noConflict();    
$(document).ready(function() {
$("#various1").fancybox({
        'titlePosition'     : 'inside',
        'transitionIn'      : 'none',
        'transitionOut'     : 'none'
    });
});
</script>    

しかし、これは問題を解決しませんでした。その後、jQuery.noConflict(); を追加しました。メインページに含まれるすべてのファイルと同じエラー: $("#various1").fancybox は関数ではなく、展開すると次のように表示されます: f(b=Document testfancybox.php, f=[function( )]) f(a=undefined) in line 2 file http://...js/jquery-1.7.1.min.js メイン ページに含まれるファイルの 1 つを除外すると、エラーはなくなります。そのファイルにはjqueryタブがあり、前述のようにnoconflict関数を追加しても役に立ちません。
このエラーをデバッグするには?

4

1 に答える 1

2

これに対する答え:名前を変更するだけ

$(document).ready(function() {    
$("#various1").fancybox({    

jquery(document).ready(function() {    
jquery("#various1").fancybox({    

そして、noconflict関数jQuery.noConflict();を追加します。$関数を使用し、問題が解決されるすべての場所に。

于 2013-01-27T11:27:31.387 に答える