Skocz do zawartości

Zdjęcie
- - - - -

Optymalizacja skryptu


Najlepsza odpowiedź unbreak, 16 października 2015 - 07:11

Łap

$(document).ready(function () {
	$(".menu li").hover(function () {
		$(this).find('ul').fadeIn('medium');
	},function () {
		$(this).find('ul').fadeOut('medium');
	}
);
Przejdź do postu


4 odpowiedzi w tym temacie
  • Zaloguj się, aby dodać odpowiedź
Tpk-Games

    Nowy użytkownik

  • 19 postów
    • Czas spędzony online: 18h 55m 3s
3
Neutralna

Napisano 14 października 2015 - 21:17

#1

Siema! Chciałbym lekko zoptymalizować skrypty na moim forum. Stąd moje pytanie - jak skrócić coś takiego:

	$(document).ready(function () {
		$(".cu0").hover(
	  function () {
		 $('.cu0-dropdown').fadeIn('medium');
	  }, 
	  function () {
		 $('.cu0-dropdown').fadeOut('medium');
	  }
	);
	$(".cu1").hover(
	  function () {
		 $('.cu1-dropdown').fadeIn('medium');
	  }, 
	  function () {
		 $('.cu1-dropdown').fadeOut('medium');
	  }
	);
	$(".cu2").hover(
	  function () {
		 $('.cu2-dropdown').fadeIn('medium');
	  }, 
	  function () {
		 $('.cu2-dropdown').fadeOut('medium');
	  }
	);

Nie znam js ale próbowałem już kombinować coś takiego:

	$(document).ready(function () {
		$(".cu0, cu1, cu2").hover(
	  function () {
		 $('.cu0-dropdown, cu1-dropdown, cu2-dropdown').fadeIn('medium');
	  }, 
	  function () {
		 $('.cu0-dropdown, cu1-dropdown, cu2-dropdown').fadeOut('medium');
	  }
	);

W tym przypadku funkcje uruchamiające zakładki menu - uruchamiały wszystkie na raz (3x menu - lewe, prawe - mobilne(cu2) jest ukryte na desktop'ie).

No i jeszcze jedna niezdarna próba zrozumienia js:

	$(document).ready(function () {
		$(".cu0") && $(".cu1") && $(".cu2").hover(
	  function () {
		 $('.cu0-dropdown') && $('.cu1-dropdown') && $('.cu2-dropdown').fadeIn('medium');
	  }, 
	  function () {
		 $('.cu0-dropdown') && $('.cu1-dropdown') && $('.cu2-dropdown').fadeOut('medium');
	  }
	);

Przy takiej sklejce kodu menu nie chciało wgl. startować.

Zapewne wielu bardziej ogarniętym koderom ten wątek wyda się być zbędnym aczkolwiek tak to jest jak się robi coś czego zrobić się nie umie ;)


  • 0

unbreak

    WT Elite

  • 1 937 postów
    • Czas spędzony online: 27d 8h 43m 36s
506
Znakomita!
  • Location/home/unbreak

Napisano 15 października 2015 - 07:09

#2

Pokaż html dla tego cu-dropdown i cu.

 

Możliwe że da się to ujednolicić za pomocą wspólnej klasy :)


  • 0

webDeveloper


Tpk-Games

    Nowy użytkownik

  • 19 postów
    • Czas spędzony online: 18h 55m 3s
3
Neutralna

Napisano 15 października 2015 - 16:55

#3

Pokaż html dla tego cu-dropdown i cu.

 

Możliwe że da się to ujednolicić za pomocą wspólnej klasy :)

		<nav class="menu float-left">
			<ul>
				<li class="navigator"><a href=""><i style="font-size: 12px;" class="fa fa-home fa-fw"></i> Strona Główna</a></li>
				<li class="navigator"><a href=""><i style="font-size: 12px;" class="fa fa-users fa-fw"></i> Użytkownicy</a></li>
				<li class="navigator"><a href=""><i style="font-size: 12px;" class="fa fa-cloud-upload"></i> Hosting</a></li>
				<li class="navigator"><a href=""><i style="font-size: 12px;" class="fa fa-info fa-fw"></i> {$lang->toplinks_help}</a></li>
  				<li class="cu0 navigator"><a href="#more"><i style="font-size: 14px;" class="fa fa-caret-down fa-fw"></i>Więcej</a>
					<ul class="cu0-dropdown">
						<li><a href=""><i style="font-size: 12px; margin: 0 2px;" class="fa fa-bar-chart"></i>  Forum statystyki</a></li>
						<li><a href=""><i style="font-size: 12px; margin: 0 4px;" class="fa fa-smile-o"></i>  Pokaż drużynę</a></li>
						<li><a href=""><i style="font-size: 12px; margin: 0 5px;" class="fa fa-bookmark-o"></i>  Rangi na forum</a></li>
					</ul>
				</li>
				<li class="cu1 resp-menu"><a href="#resp-menu"><nobr><i class="fa fa-bars"></i> Menu <i class="fa fa-caret-down fa-fw"></i></nobr></a>
					<ul class="cu1-dropdown">
						<li><a href="" class="active"><i class="fa fa-home"></i> Strona Główna</a></li>
						<li><a href=""><i class="fa fa-heart"></i> Użytkownicy</a></li>
						<li><a href=""><i class="fa fa-cloud-upload"></i> Hosting</a></li>
						<li><a href=""><i class="fa fa-folder-open"></i> {$lang->toplinks_help}</a></li>
						<li><a href=""><i class="fa fa-flask"></i> Forum statystyki</a></li>
						<li><a href=""><i class="fa fa-cogs"></i> Pokaż ekipę</a></li>
						<li><a href=""><i class="fa fa-picture-o"></i> Rangi na forum</a></li>
					</ul>
				</li>
			</ul>
		</nav>
		<nav class="user_ui float-right">
			<ul>
				{$welcomeblock}
			</ul>
		</nav>

  • 0

unbreak

    WT Elite

  • 1 937 postów
    • Czas spędzony online: 27d 8h 43m 36s
506
Znakomita!
  • Location/home/unbreak

Napisano 16 października 2015 - 07:11   Najlepsza odpowiedź

#4

Łap

$(document).ready(function () {
	$(".menu li").hover(function () {
		$(this).find('ul').fadeIn('medium');
	},function () {
		$(this).find('ul').fadeOut('medium');
	}
);

  • 3

webDeveloper


Tpk-Games

    Nowy użytkownik

  • 19 postów
    • Czas spędzony online: 18h 55m 3s
3
Neutralna

Napisano 18 października 2015 - 11:52

#5

 

Łap

$(document).ready(function () {
	$(".menu li").hover(function () {
		$(this).find('ul').fadeIn('medium');
	},function () {
		$(this).find('ul').fadeOut('medium');
	}
);

Dzięki wielkie (pomimo lekkich problemów z klasą user_ui udało mi się osiągnąć zamierzony efekt). Leci +/


  • 1





Podone tematy Collapse

Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych