0

アプリケーションで多くの jQuery ライブラリを使用しています。

私のアプリケーションは地図に基づいており、地図は私自身のサーバー mapmyindia.com によって生成されます。

問題は、fancybox jQuery ライブラリ、ページネーション jQuery ライブラリ、およびドロップダウン チェックリスト jQuery ライブラリをすべて一緒に使用すると、jQuery の競合が発生することです。

jQuery ライブラリの競合が原因で、方向検索 API が機能しません。

ただし、すべての jQuery ライブラリを削除すると、方向検索 API を問題なく使用できます。

jQuery ライブラリを有効にすると、次のエラーが表示されます。

$.jsonp は関数ではありません

私のアプリケーションは app.mapmyindia.com/michelin にあります。助けてください......

<script>MIREO_RESOURCES_ROOT = "http://46.137.254.191/MapServer/";</script>
<script type="text/javascript" src="http://46.137.254.191/MapServer/MireoWebMap.js"></script>

<script type="text/javascript">
    var map = $("#map");
    var valid = new Validation();
    map.MireoMap();
</script>


<script type="text/javascript" src="jquery/jquery-1.6.1.min.js"></script>
<script type="text/javascript" src="jquery/jquery-ui-1.8.13.custom.min.js"></script>
<script type="text/javascript" src="jquery/ui.dropdownchecklist-1.4-min.js"></script>
<script type="text/javascript" src="fancybox/jquery.fancybox.js?v=2.0.6"></script>
<link rel="stylesheet" type="text/css" href="fancybox/jquery.fancybox.css?v=2.0.6" media="screen"/>
4

3 に答える 3

1

jquery を使用してnoConflict()、競合の問題を解決する最新バージョンの jquery をダウンロードしてみてください

于 2012-06-13T05:41:07.053 に答える
0

JavaScript を宣言した順序。つまり、MapmyIndi​​a Js を最初にインポートして、それを使用します。

<script type="text/javascript">
var map = $("#map");
var valid = new Validation();
map.MireoMap();
</script> 

そしてjQueryを呼び出すと、jQueryが問題を引き起こすとは思いません。

また、使用する必要があります

var map=document.getElementById("id");

その後jQueryを呼び出しているため、 $() は機能しません。

編集: または、MayMyIndi​​a Js にも jQuery が必要な場合は、jQuery.Js を上に呼び出す必要があります。

于 2012-06-13T05:51:16.053 に答える
0

これを試して :

jquery noconflict を使用して、コードを jQuery 関数でラップします。

http://api.jquery.com/jQuery.noConflict/

jQuery.noConflict();
jQuery(function($){
  // my code here each 
});

幸運を。

于 2012-06-13T05:41:11.687 に答える