#jquery

Pomocy.

Mam taką strukturę:

Container
child div - display:block
child div - display:none

Te divy mają różna wysokośc z uwagi na rózną ilośc tekstu. Button toggluje widoczność tych elementów tak że raz pokazuje 1, raz 2. Problemem jest wysokość jaką przybiera container. Chciałbym osiągnąć height animate między wysokosciami tych elementów aby podczas przełączania nie było gwałtownych przeskoków wysokości containera. ma ktoś pomysł ja do tego podejść?
Witajcie mirki.
Mam taką sytuację:
1. Mam stronkę z responsive design.
2. Kiedy przewijam do takiego widoku: http://i.share.pho.to/8c3c3cad_o.png i klikam w TEST3, to otwiera mi się to w taki sposób: http://i.share.pho.to/f7ebfceb_o.png a chciałbym, żeby zdjęcie i przycisk wyłączania nie chowały się za belkę u góry strony, tzn. żeby to wyglądało w taki sposób: http://i.share.pho.to/9cf315fc_o.png
3. Rozmawiałem z kolegą, który pisał CSS i powiedział, że samym CSSem tego nie da się uporządkować, a
#webdevhelp #jquery

Załóżmy, że mam zdarzenie

$('selektor').on('click', function() {
// tutaj togluje jakieś klasy po kliknięciu w selektor
});

W jaki sposób mogę wywołać callback, żeby obsłużyć drugie kliknięcie w ten sam selektor?

Czyli np.

//Przy pierwszym kliknięciu

$('button').on('click', function() {
$('div').css("display", "block");
});

//Przy drugim kliknięciu

$('button').on('click', function() {
$('div').css("display", "none");
});

Próbowałem tak:

$('button').on('click', function() {
$('div').css("display", "block");
}, function(){
$('div').css("display", "none");
);

Ale nie działa.
@Eggy: dziękuję bardzo. Trochę skomplikowane, sam bym na to nie wpadł chociaż próbowałem zagnieżdżać jakoś funkcję. Będę już wiedział na przyszłość. :)

Pomęczę Cię jeszcze trochę jeśli można ;). Nie to, że nie rozumiem tego co mi wysłałeś, ale jest możliwość napisania to jakoś łatwiej bez używania 'click'? Może opiszę szerzej co próbuję zrobić.

Klikam w przycisk i nadaje jakiemuś elementowi klasę np. "showfromtop".
Klikam drugi raz i i nadaje mu
Mirasy, już tracę wiarę w połączenie tego jsa, żeby śmigało na Chromie. Canvas za każdym razem ładnie działa na FF, ale na Chromie w 1/3 przypadków nie rysuje. Any ideas?

function preloadimagetocanvas(){
..var canvas = document.getElementById("canvas");
..var context = canvas.getContext("2d");
..var background = document.getElementById("background
picture");

..canvas.width = background.width;
..canvas.height = background.height;

//rysowanie
..drawbackground(context, background, function(){
.... canvas.style.display = 'block';
.... canvas.style.position = 'inherit';
.... background.style.display = 'none';
..});
@marcinzwwa: masz tylko 2 funkcje, więc skrypt spokojnie może sobie siedzieć w head
funkcja jest odpalana na onlodzie obrazka, więc nie powinno być tu żadnego problemu
Hej!
Czy warto uczyc sie #angularjs ? (dodaje ponownie bo nie otagowalem #javascript )
Chodzi mi o zastosowanie w aplikacji webowej, powiedzmy, ze rozbudowanej.
Znam #jquery i troche nie moge zaskoczyc filozofii angulara, ale duzo dobrego o nim przeczytalem i mysle, ze moze warto sie nauczyc? Nie pracuje w #webdev ale to moje hobby i powiedzmy, ze probuje stworzyc cos, co moze kiedys zarobi na siebie, ale tez po prostu dla wlasnej
czemu tylko 2 ?


@Jurigag: Twórcy angulara zrozumieli to co inni tzn. two-way binding nie zdaje egzaminu. Wersja 2 przechodzi na model zbliżony do tego w redux/flux. Tak naprawdę Angular 2 ma bardzo niewiele wspólnego z Angular 1. Rzeczywiście jest tak jak piszesz - v1 będzie wspierany jeszcze przez jakiś czas, ale jego dni są policzone.
@trustME: IMO trzeba się uczyć języka a nie frameworka. W innym wypadku wszystko co się dzieje "pod spodem" pozostaje magią i rozwiązanie trywialnych problemów sprowadza się do kopiowania odpowiedzi ze stackoverflow. Gdy umiesz język to framework jest tylko narzędziem.

Sądzę, że zabawę z frameworkami lepiej zacząć od lżejszych rzeczy niż Angular np. od biblioteki Backbone, która może nie jest już na topie, ale to nadal dobre, rozwijane narzędzie (albo Backbone
#jquery #webdev
klikam na dowolny element p
dlaczego nie działa?

Katarzyna Zöllnka

Roman Szamat

Izabela Kalino

jQuery("#queuecouncilorsproposal").find("p").click(function(){
alert("w funkcji");
console.log("==============================w funkcji");

});

tak też nie:
jQuery("#queuecouncilorsproposal p").click(function(){
alert("w funkcji");
console.log("==============================w funkcji");

});

tak też nie:
document.getElementById("queueCouncilorsProposal").getElementsByTagName('p').onclick=function(){
alert("w funkcji");
console.log("================================================================w funkcji");
}
Jest jakiś szczególny powód, żeby używać jQuery zamiast VanillaJS? Na razie nie miałem zbyt wielu okazji, żeby pisać coś w JavaScripcie, ale jak już pisałem, to ograniczałem użycie jQuery, bo nie widziałem sensu, żeby je stosować (szczególnie, że 'getDocumentById' wcale nie jest dużo dłuższe niż to samo w jQuery). Teraz współpracownicy czepiają się, że nie używam jQuery ("bo skoro już mamy bibliotekę, to jej używajmy"). Jaki to ma sens?
#javascript #jquery
Jest jakiś szczególny powód, żeby używać jQuery zamiast VanillaJS


@zranoI: Kiedyś tym szczególnym powodem było łatwiejsze i cross-przeglądarkowe API. Dzisiaj różnice między przeglądarkami już się trochę zatarły, aczkolwiek nadal jego API jest "lepsze" niż API DOM:
- .on zamiast .addEventListener, zdarzenie 'load' zamiast 'DOMContentLoaded'
- composite pattern
- brak cholernych nulli
- operacje na kolekcjach (typu map - brak takowych w NodeList)
- więcej selektorów niż w czystym querySelectorAll
@newblob: pewnie chodzilo o to zeby mozna bylo tego uzywac w kontekscie D&D, gdzie elementy interfejsu moga w jakis sposob zamrozic silnik przeliczania styli.
@mozz: wzorce projektowe i vanilla js + jakiś jeden sensowny framework. IMO nie ma sensu się uczyć frameworków na zapas.

Jeden framework to następne szybko lapiesz

O to to.

No i dochodzi trochę powszechnie używanych narzędzi - git, jshint, node + npm, etc.
@kimikini: @Pytoo: patrzylem na d3 i na moje oko to zbyt rozwiniete rozwiazanie (patrze na rodzaje wykresow chociazby, pewnie i sam framework jest ciezki), ja potrzebuje zwykle line charts z animacjami, hoverami, responsywnoscia itp i to daje mi charts.js co polecam, bo i z update data sobie poradzilem ;)
@krzysztofu: tak sobie tlyko wtrące mocno offtopicowo - jak przygotowujesz stronkę pod urządzenia mobilne, to warto stosować selector :active dla elementów typu , itp. chodzi o to, że w momencie tapnięcia na przeglądarkach mobilnych css dodaje selector :active do elementów i tam możemy np. odwrócić kolory elementu listy czy dodać jakąś animację.

to ZNACZĄCO poprawia look'n'feel w przypadku przeglądania stron mobilnych.
Dlaczego jak dodam jQuery mobile do strony

to przestaje mi działać skrypt taki:

$(document).ready(function(){

$('.gotop').click(function(e){
e.preventDefault();
var href=$(this).attr('href');
if(!href.match(/#/)){
window.location.href = href;
}

var fromtop = $(href).offset().top-64;

$('html, body').animate({
scrollTop: fromtop
}, 1000, function(){
});
});

});

Bez tego działa, a potrzebuję to jQuery mobile i potrzebuję również żeby działał ten skrypt..

#webdev #javascript #jquery
@qwertyu: SecurityError: Failed to execute 'replaceState' on 'History': A history state object with URL 'osiedle-html/index.html' cannot be created in a document with origin 'null' and URL 'osiedle-html/index.html'.

Tylko coś takiego jest, nic więcej.