www.WebTips.pl: [vivee] Zakładki do sidebara - www.WebTips.pl

Skocz do zawartości


Strona 1 z 1
  • Nie możesz napisać tematu
  • Nie możesz odpowiedzieć

[vivee] Zakładki do sidebara html / css / js

#1 Użytkownik nie jest zalogowany   vivee 

  • Nowicjusz
  • Grupa Użytkownik
  • Postów 14
  • Rejestracja 11 sie 08

Napisano 11 sierpień 2008 - 23:12

Dołączona grafika



Jako szczęśliwi posiadacze blogów, po pewnym czasie natrafiamy na problem rozrostu sidebara do ogromnych rozmiarów. Jednym ze sposobów jest skorzystać z dobrodziejstw javascript i porobić
zakładki.



Cały tutorial dostępny na: http://vivee.info/20...ki-do-sidebara/
0


Strona 1 z 1
  • Nie możesz napisać tematu
  • Nie możesz odpowiedzieć

Odpowiedzi do tego tematu

#2 Użytkownik nie jest zalogowany   exceptional 

  • Weteran
  • PipPipPipPipPipPip
  • Grupa Moderator
  • Postów 1756
  • Rejestracja 30 kwi 06
  • MiejscowośćŁódź

Napisano 12 sierpień 2008 - 00:52

Efekt całkiem niezły, tylko po co całe JQuery ładować?
Poza forum pomagam wyłącznie za pieniądze.
» Portfolio « | Brainfucker.pl | DeviantART | Kliknij i zmuś Griwesa do pisania (:

Deo Optimo Maximo
0

#3 Użytkownik nie jest zalogowany   ziele 

  • Happy Maker WebTips ;)
  • PipPipPipPipPipPipPip
  • Grupa Użytkownik
  • Postów 2609
  • Rejestracja 17 paź 06
  • MiejscowośćGrójec

Napisano 31 sierpień 2008 - 15:20

Kaczlawo bardzo dobrze mówi.. Po co ładować całą ciężką bibliotekę skoro można to też załatwić prostym, krótkim i lekkim skryptem.

Nie sądzicie, że należy przenieść do innego działu.? To jest bardziej tutorial o JS niż o html & css ;)
Portfolio w wersji BETA
0

#4 Użytkownik nie jest zalogowany   Stolski 

  • Wyga
  • PipPipPipPip
  • Grupa Użytkownik
  • Postów 655
  • Rejestracja 15 wrz 06
  • MiejscowośćLublin

Napisano 31 sierpień 2008 - 16:01

innym mówisz że nic nie wnoszą do tematu a sam to robisz :) płacą Ci za posty ? a żeby nie było offtopowo to podaj taki skrypt który nie będzie wykorzystywał tej biblioteki
Dołączona grafika

Doba ma 24 godziny. Skrzynka 24 piwa. Przypadek ?
0

#5 Użytkownik nie jest zalogowany   griwes 

  • Netherilski Arkanista
  • PipPipPipPipPipPip
  • Grupa Moderator
  • Postów 1747
  • Rejestracja 11 lip 06
  • MiejscowośćRacibórz/Wrocław

Napisano 31 sierpień 2008 - 16:08

IMO to, że jquery jest duże, niewiele znaczy de facto. naprawdę ciekawe rzeczy można wykonać tworząc 1linijkowy skrypt.
0

#6 Użytkownik nie jest zalogowany   LapKom 

  • Wyga
  • PipPipPipPip
  • Grupa Użytkownik
  • Postów 504
  • Rejestracja 16 kwi 07

Napisano 31 sierpień 2008 - 16:33

Identyczny efekt można otrzymać przy uzyciu lżejszego Prototype. Poniżej zamieszczam kod moich zakładek (co prawda z ładowaniem treści za pomocą Ajax'a, ale kod jest podobnej długości, jak ten co pokazałeś. :)

Hash.prototype.toObject = Hash.prototype.toObject || function() { return Object.clone(this); }

var DynamicTabs = function(tabpanel, page_urls, args) {
	var args = $H({asynchronous: true, method: 'get', evalScripts: true}).merge(args).toObject();	
	this.load_page = function(page_id) {
		new Ajax.Updater(tabpanel, page_urls[page_id], args);
	}
	
	for (page_id in page_urls) {
		Event.observe(page_id, 'click', function(e) {
			if ('function' == typeof(args.onclick))
				args.onclick(e);

			for (page_id in page_urls) $(page_id).removeClassName('active');
			this.load_page(Event.element(e).addClassName('active').id);
			Event.stop(e);
		}.bindAsEventListener(this));

		if ($(page_id).hasClassName('active')) { this.load_page(page_id); }
	}
}


To wrzucasz do <head>, potem tworzysz przykładową kontrolkę:
<ul>
  <li><a id="nav1" href="">Tab 1</a></li>
  <li><a id="nav2" class="active" href="">Tab 2</a></li>
  <li><a id="nav3" href="">Tab 3</a></li>
</ul>
<div id="loader" style="display: none;">Loading...</div>
<div id="content"></div>

No i na sam koniec uruchamiasz kontrolkę:
<script type="text/javascript">
  new DynamicTabs('content',
		   {
			  'nav1': 'page1.html',
			  'nav2': 'page2.html',
			  'nav3': 'page3.html'
			},
			{
			  onclick: function(e) {
							$('loader').show();
						   },
			  onSuccess: function(e) {
							$('loader').hide();
						   }
			});
</script>


Jak widzisz wszytkie parametry podajesz w lekkim JSON'ie. Te funkcje onclick i OnSuccess to opcjonalne paramtery dla samej kontrolki Ajaxowej. To tak dla przykładu jeśli chcesz wrzucić jakiś komunikat albo pasek postepu podczas wczytywanai stron. :) Mozna też ustawić, żeby skrypt przesyłał dane metodą 'post', wystarczy zamienić 'get' na 'post' i w JSON'ie tak samo jak onclick dodać liste parametrów do przekazania. Proste? :)
Pomocy na GG udzielam, tylko wtedy, kiedy sam ją zaproponuje.

Dołączona grafika

Dołączona grafika

Dołączona grafika
0

#7 Użytkownik nie jest zalogowany   Elvis 

  • Junior
  • Pip
  • Grupa Użytkownik
  • Postów 44
  • Rejestracja 29 kwi 10

Napisano 26 maj 2010 - 11:55

Fajny Bajer :D
-3

Strona 1 z 1
  • Nie możesz napisać tematu
  • Nie możesz odpowiedzieć

Użytkownicy przeglądający ten temat: 1
0 użytkowników, 1 gości, 0 anonimowych