Конфликт Jquery?

#javascript #jquery #jquery-ui #jquery-plugins

#javascript #jquery #jquery-пользовательский интерфейс #jquery-плагины

Вопрос:

Я пытаюсь использовать jquery в своем приложении, где я уже использовал некоторые jquery ранее в нескольких местах. как бы то ни было, теперь я хочу добавить еще одно объявление для моей презентации tab. Я практикую это следующим образом..

 <head>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js">
    </script>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/jquery-ui.min.js">
    </script>
</head>

<body>
    <script>
        $(function() {
            $( "#my_tabs" ).tabs({
                event: "mouseover" //click 
            });
            $.noConflict();
        });
    </script>
  

Но когда я использую это, мой предыдущий jquery, который я использовал с другой частью той же страницы, перестает работать. Я думаю, что у двух jquery есть конфликты. Я пытался сделать это с помощью $.noConflict (), как показано в приведенном выше коде, и это не работает, я думаю, что я что-то упускаю. Пожалуйста, помогите …

Комментарии:

1. Вы включаете jquery несколько раз на одной странице? Если да, то почему?

Ответ №1:

Вот каким должен быть ваш код:

 <script>
    var jq = $.noConflict();

    jq(function() {
        jq( "#my_tabs" ).tabs({
            event: "mouseover" //click 
        });            
    });
</script>
  

Или в качестве альтернативы,

 (function( $ ){
    $( "#my_tabs" ).tabs({
       event: "mouseover" //click 
    });            
})( jQuery );
  

Последняя известна как самозваная анонимная функция и используется для сопоставления $ с jQuery объектом, что означает, что вы можете безопасно использовать $ внутри.

Комментарии:

1. На самом деле, есть третий, лучший способ: jq(function($) { /* your code using $ here */ }); — функция document.ready всегда получает объект jQuery в качестве своего первого аргумента

Ответ №2:

 var JQN = jQuery.noConflict();
  

пример использования:

 JQN("#id");