Conflito da Jquery com outros Frameworks ($)

Saudações amigos, como dito lá no forum, estou de volta depois de longos dias na ” terra do nunca”.

Mas bem, percebo que tem algumas pessoas que precisam trabalhar com a Jquery ou que estão migrando para a mesma, porem, seus sistemas ainda utilizam outros frameworks que trabalham com a marcação ($).

E lá ta você todo empolgado para começar a fazer milagres com a Jquery e quando mandar rodar, o que acontece? Seu framework antigo se mete da frente e tenta interpretar tudo (ou vice-versa) =).

Pois bem, vamos acabar com isso, Jquery acima de tudo é democrática.

E para que este conflito acabe precisa apenas citar o método: .noConflict()

No caso de está desenvolvendo algo novo podes utilizar o parão:

Este você apenas precisará o (Jquery) no lugar do ($).

<html>
<head>
<script src=”prototype.js”></script>
<script src=”jquery.js”></script>
<script>
jQuery.noConflict();

// Use jQuery via jQuery(…)
jQuery(document).ready(function(){
jQuery(”div”).hide();
});

// Use Prototype with $(…), etc.
$(’someid’).style.display = ‘none’;
</script>
</head>
<body></body>
</html>

Ou este que manipula o marcador da Jquery de ($) para ($J).

Um tanto original e personalidado, você pode usar o marcador que desejar

Ex: $vitor(’#meu_div’)

<html>
<head>
<script src=”prototype.js”></script>
<script src=”jquery.js”></script>
<script>
var $j = jQuery.noConflict();

// Use jQuery via $j(…)
$j(document).ready(function(){
$j(”div”).hide();
});

// Use Prototype with $(…), etc.
$(’someid’).style.display = ‘none’;
</script>
</head>
<body></body>
</html>

Ou ainda para poder evitar o conflito entre plugins que já usam o ($) por padrão. você poderá apenas usar esta solução.

<html>
<head>
<script src=”prototype.js”></script>
<script src=”jquery.js”></script>
<script>
jQuery.noConflict();

// Put all your code in your document ready area
jQuery(document).ready(function($){
// Do jQuery stuff using $
$(”div”).hide();
});

// Use Prototype with $(…), etc.
$(’someid’).style.display = ‘none’;
</script>
</head>
<body></body>
</html>

Bem, pelo menos não teremos mais dores de cabeça com estes conflitos.

Abraços….

Vitor Prado.