Piccolo conflitto jquery.. Chi gli da uno sguardo?

otto9due

Utente Attivo
22 Feb 2014
591
25
28
Nella stessa pagina ho un menu e un tab che utilizzano entrambi jquery. Ho notato che eliminando il src del menu e la relativa funzione dalla head tutto funziona ( tranne il menu ovviamente ) .. Quindi dev'essere un conflitto tra questi due elementi. Avevo letto da qualche parte che bastava sostituire $ con jQuery per eliminare i conflitti.. ma nulla, o almeno non so quale sostituire..
Posto l'intera pagina, così da darvi un'idea dell'esistente.. Grazie anticipatamente a chi si presterà ;)
PHP:
<?php include 'funzioni/funzioni.php'; ?>
<!DOCTYPE html>
<html lang="it" xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<meta name="viewport" content="width=device-width, user-scalable=no" />
<title>Documento senza titolo</title>
<link href="css/style.css" rel="stylesheet" type="text/css" />
<link href='http://fonts.googleapis.com/css?family=Roboto:500,400' rel='stylesheet' type='text/css'>
<link rel="stylesheet" href="css/font-awesome.css">
<script src="js/jquery-1.6.3.min.js"></script>
<script src="js/easyResponsiveTabs.js" type="text/javascript"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
	<script>
		$(function() {
			var pull 		= $('#pull');
				menu 		= $('nav ul');
				menuHeight	= menu.height();

			$(pull).on('click', function(e) {
				e.preventDefault();
				menu.slideToggle();
			});

			$(window).resize(function(){
        		var w = $(window).width();
        		if(w > 320 && menu.is(':hidden')) {
        			menu.removeAttr('style');
        		}
    		});
		});
	</script>
</head>

<body>
<?php include 'funzioni/menu.php';?>
        <div id="horizontalTab">
            <ul class="resp-tabs-list">
                <li>Responsive Tab-1</li>
                <li>Responsive Tab-2</li>
                <li>Responsive Tab-3</li>
            </ul>
            <div class="resp-tabs-container">
                <div>
                    <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum nibh urna, euismod ut ornare non, volutpat vel tortor. Integer laoreet placerat suscipit. Sed sodales scelerisque commodo. Nam porta cursus lectus. Proin nunc erat, gravida a facilisis quis, ornare id lectus. Proin consectetur nibh quis urna gravida mollis.</p>
                </div>
                <div>
                    <p>This tab has icon in consectetur adipiscing eliconse consectetur adipiscing elit. Vestibulum nibh urna, ctetur adipiscing elit. Vestibulum nibh urna, t.consectetur adipiscing elit. Vestibulum nibh urna,  Vestibulum nibh urna,it.</p>
                </div>
                <div>
                    <p>Suspendisse blandit velit Integer laoreet placerat suscipit. Sed sodales scelerisque commodo. Nam porta cursus lectus. Proin nunc erat, gravida a facilisis quis, ornare id lectus. Proin consectetur nibh quis Integer laoreet placerat suscipit. Sed sodales scelerisque commodo. Nam porta cursus lectus. Proin nunc erat, gravida a facilisis quis, ornare id lectus. Proin consectetur nibh quis urna gravid urna gravid eget erat suscipit in malesuada odio venenatis.</p>
                </div>
            </div>
        </div>
        <br />

        <div id="tabInfo">
            Selected tab: <span class="tabName"></span>
        </div>
<?php include 'funzioni/footer.php';?>
</body>
<script type="text/javascript">
    $(document).ready(function ($) {
        $('#horizontalTab').easyResponsiveTabs({
            type: 'default', //Types: default, vertical, accordion           
            width: 'auto', //auto or any width like 600px
            fit: true,   // 100% fit in a container
            closed: 'accordion', // Start closed if in accordion view
            activate: function(event) { // Callback function if tab is switched
                var $tab = $(this);
                var $info = $('#tabInfo');
                var $name = $('span', $info);

                $name.text($tab.text());

                $info.show();
            }
        });

        $('#verticalTab').easyResponsiveTabs({
            type: 'vertical',
            width: 'auto',
            fit: true
        });
    });
</script>
</html>
 
Richiami due librerie jquery diverse.
Ti basta richiamare la più aggiornata prima degli altri script
 
Quindi mettere prima questa..

PHP:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>

di.. quest'altra??

PHP:
<script src="js/jquery-1.6.3.min.js"></script>
 
Ho provato anche in questo modo ma nulla..
Il problema persiste..
PHP:
<?php include 'funzioni/funzioni.php'; ?>
<!DOCTYPE html>
<html lang="it" xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<meta name="viewport" content="width=device-width, user-scalable=no" />
<title>Documento senza titolo</title>
<link href="css/style.css" rel="stylesheet" type="text/css" />
<link href='http://fonts.googleapis.com/css?family=Roboto:500,400' rel='stylesheet' type='text/css'>
<link rel="stylesheet" href="css/font-awesome.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script src="js/jquery-1.6.3.min.js"></script>
<script src="js/easyResponsiveTabs.js" type="text/javascript"></script>
	<script>
		$(function() {
			var pull 		= $('#pull');
				menu 		= $('nav ul');
				menuHeight	= menu.height();

			$(pull).on('click', function(e) {
				e.preventDefault();
				menu.slideToggle();
			});

			$(window).resize(function(){
        		var w = $(window).width();
        		if(w > 320 && menu.is(':hidden')) {
        			menu.removeAttr('style');
        		}
    		});
		});
	</script>
</head>

<body>
<?php include 'funzioni/menu.php';?>
        <div id="horizontalTab">
            <ul class="resp-tabs-list">
                <li>Responsive Tab-1</li>
                <li>Responsive Tab-2</li>
                <li>Responsive Tab-3</li>
            </ul>
            <div class="resp-tabs-container">
                <div>
                    <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum nibh urna, euismod ut ornare non, volutpat vel tortor. Integer laoreet placerat suscipit. Sed sodales scelerisque commodo. Nam porta cursus lectus. Proin nunc erat, gravida a facilisis quis, ornare id lectus. Proin consectetur nibh quis urna gravida mollis.</p>
                </div>
                <div>
                    <p>This tab has icon in consectetur adipiscing eliconse consectetur adipiscing elit. Vestibulum nibh urna, ctetur adipiscing elit. Vestibulum nibh urna, t.consectetur adipiscing elit. Vestibulum nibh urna,  Vestibulum nibh urna,it.</p>
                </div>
                <div>
                    <p>Suspendisse blandit velit Integer laoreet placerat suscipit. Sed sodales scelerisque commodo. Nam porta cursus lectus. Proin nunc erat, gravida a facilisis quis, ornare id lectus. Proin consectetur nibh quis Integer laoreet placerat suscipit. Sed sodales scelerisque commodo. Nam porta cursus lectus. Proin nunc erat, gravida a facilisis quis, ornare id lectus. Proin consectetur nibh quis urna gravid urna gravid eget erat suscipit in malesuada odio venenatis.</p>
                </div>
            </div>
        </div>
        <br />

        <div id="tabInfo">
            Selected tab: <span class="tabName"></span>
        </div>
<?php include 'funzioni/footer.php';?>
</body>
<script type="text/javascript">
    $(document).ready(function ($) {
        $('#horizontalTab').easyResponsiveTabs({
            type: 'default', //Types: default, vertical, accordion           
            width: 'auto', //auto or any width like 600px
            fit: true,   // 100% fit in a container
            closed: 'accordion', // Start closed if in accordion view
            activate: function(event) { // Callback function if tab is switched
                var $tab = $(this);
                var $info = $('#tabInfo');
                var $name = $('span', $info);

                $name.text($tab.text());

                $info.show();
            }
        });

        $('#verticalTab').easyResponsiveTabs({
            type: 'vertical',
            width: 'auto',
            fit: true
        });
    });
</script>
</html>
 
questa la devi proprio eliminare
HTML:
<script src="js/jquery-1.6.3.min.js"></script>
 
Grande.. Ora funziona..
Colgo l'occasione per farti una domanda..
1) Se ho due script con due versoni diverse, basta usare la più recente? Cioè, la più recente contiene tutte le altre precedenti?
Avrei potuto quindi sostituire quella che ho lasciato ( la 1.7.2 ) con la 1.10ecc.??
2) Seconda domanda.. Che differenza c'è tra la libreria normare e quella min? Solo il fatto che sia compressa, minimizzata, senza spazi per l'ottimizzazione dei js? O c'è altro?.
 
1) Si, dovremmo cmq essere alla 2.1
2) E' più leggera da caricare prprio perchè compressa
 

Discussioni simili