Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [JavaScript][CSS] Obrót obrazka o 90stopni po kliknięciu
php__amator
post 13.10.2014, 10:13:55
Post #1





Grupa: Zarejestrowani
Postów: 217
Pomógł: 1
Dołączył: 26.05.2011
Skąd: Moon

Ostrzeżenie: (10%)
X----


Witajcie przedszkolacy,
Napotkałem taki problem i nie wiem jak go rozwiązać. Jakkolwiek obrót obrazka nie nastręcza problemu to już żeby odbyło się to dopiero po kliknięciu jest problemem.
Podpowiedzcie proszę jak to zrobić sad.gif
Pomyślałem sobie, że można by z użyciem JS i onclick zmienić właściwości CSS i spowodować obrócenie obrazka.
W sumie, jeśli mozna by dodatkowo uzyskać efekt animacji obrotu było by wręcz cudownie.
Żeby obrazek poprostu nie przeskakiwał z pozycji pionowej do poziomej.

Please help ....
Go to the top of the page
+Quote Post
Turson
post 13.10.2014, 10:19:25
Post #2





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

Ostrzeżenie: (0%)
-----


http://stackoverflow.com/questions/1519105...-jquery-animate
http://stackoverflow.com/questions/9776015...-a-rotating-div
http://stackoverflow.com/questions/3789984...-a-div-rotation
Próbowałeś w ogole szukac..?
Go to the top of the page
+Quote Post
markuz
post 13.10.2014, 10:20:46
Post #3





Grupa: Zarejestrowani
Postów: 1 240
Pomógł: 278
Dołączył: 11.03.2008

Ostrzeżenie: (0%)
-----


http://jsfiddle.net/mYQNL/49/


--------------------
Go to the top of the page
+Quote Post
php__amator
post 13.10.2014, 12:00:45
Post #4





Grupa: Zarejestrowani
Postów: 217
Pomógł: 1
Dołączył: 26.05.2011
Skąd: Moon

Ostrzeżenie: (10%)
X----


A troszkę szukałem chociaż bardziej skupiłem się na CSS-owym rozwiązaniu.
Dziękuję serdecznie Panowie przedszkolacy smile.gif


Ok, a jak zmiksować te skrypty żeby działało ?

Pierwszy obraca obrazek, drugi wysuwa diva i pokazuje formularz.
który w nagłówku ma obrazek którym chcę wykonać obrót o 90stopni

<script type="text/javascript" language="JavaScript">
$('.rotate').click(function () {
$(this).rotate({
duration: 200,
angle: 0,
animateTo:90

});
var flip = 0;
$("#rotating1").click(function () {
flip++;
if (flip % 2 == 1)
$("#floatingenquire #contactform").slideDown('slow');
else
$("#floatingenquire #contactform").slideUp('slow');
});
});
</script>
Zrobiłem tak i na JSFiddle działa, natomiast po umieszczeniu wszystkich elementów na stronie ....... nie działa sad.gif
http://jsfiddle.net/mYQNL/64/
Go to the top of the page
+Quote Post
Pyton_000
post 13.10.2014, 12:05:20
Post #5





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

Ostrzeżenie: (0%)
-----


A co piszczy w konsoli developera?
Go to the top of the page
+Quote Post
php__amator
post 13.10.2014, 12:26:50
Post #6





Grupa: Zarejestrowani
Postów: 217
Pomógł: 1
Dołączył: 26.05.2011
Skąd: Moon

Ostrzeżenie: (10%)
X----


Nie zauważyłem a piszczy to:
Uncaught SyntaxError: Unexpected token var

Dlaczego więc działa na JSFiddle jeśli jest błąd ?

Taka wersja na JSFiddle działa jeszcze lepiej smile.gif
Niestety tylko na JSFiddle

var flip = 0;
$('.rotate').click(function () {
$(this).rotate({
duration: 200,
angle: 0,
animateTo:90
});
flip++;
if (flip % 2 == 1)
$("#floatingenquire #contactform").slideDown('slow');
else
$("#floatingenquire #contactform").slideUp('slow');
});

w ckonsoli pokazuje błąd:
"Uncaught TypeError: undefined is not a function "
sad.gif nie kumam
Go to the top of the page
+Quote Post
viking
post 13.10.2014, 12:28:53
Post #7





Grupa: Zarejestrowani
Postów: 6 378
Pomógł: 1116
Dołączył: 30.08.2006

Ostrzeżenie: (0%)
-----


Osadziłeś jquery na stronie? Jest to wewnątrz pliku JS albo <script>?


--------------------
Go to the top of the page
+Quote Post
php__amator
post 13.10.2014, 12:50:57
Post #8





Grupa: Zarejestrowani
Postów: 217
Pomógł: 1
Dołączył: 26.05.2011
Skąd: Moon

Ostrzeżenie: (10%)
X----


W sumie nie bezpośrednio bo gdzieś tam jest odwołanie do jquery.
skrypt jest umieszczony w pliku xml z którego zawartość jest wklejana do głównego skryptu.

Zrobiłem więc tak:
<script type="text/javascript" src="catalog/view/javascript/jquery/jquery-1.7.1.min.js"></script>
<script>
var flip = 0;
$('.rotate').click(function () {
$(this).rotate({
duration: 200,
angle: 0,
animateTo:90
});
flip++;
if (flip % 2 == 1)
$("#floatingenquire #contactform").slideDown('slow');
else
$("#floatingenquire #contactform").slideUp('slow');
});
</script>
ale dalej nie działa smile.gif


Uncaught TypeError: undefined is not a function VM1344 index.php?route=common/home:472
(anonymous function) VM1344 index.php?route=common/home:472
n jquery-1.7.1.min.js:2
o.fireWith jquery-1.7.1.min.js:2
e.extend.ready jquery-1.7.1.min.js:2
c.addEventListener.B jquery-1.7.1.min.js:2
A tak mi wywala w konsoli sad.gif
HELP ME PLEASE smile.gif
Go to the top of the page
+Quote Post
Pyton_000
post 13.10.2014, 13:25:48
Post #9





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

Ostrzeżenie: (0%)
-----


umieść cały skrypt w

Kod
$(function() {
...
})
Go to the top of the page
+Quote Post
php__amator
post 13.10.2014, 14:19:43
Post #10





Grupa: Zarejestrowani
Postów: 217
Pomógł: 1
Dołączył: 26.05.2011
Skąd: Moon

Ostrzeżenie: (10%)
X----


Powoli znajduje problemy. Już zaczęło działać.
Podlinkowałem osobnyą bibliotekę jQueryRotate i działa.
Okazało się, że standardowa jQuery nie działała stąd problem smile.gif

Nie działa co prawda jeszcze jak bym chciał ale już obraca obrazek i wysuwa formularz po kliknięciu smile.gif
Teraz nieco bardziej skomplikowane zadanie - przynajmniej dla mnie.

Mianowicie, jak spowodować, żeby po ponownym kliknięciu obrazek wracał do pierwotnego położenia ?

Właściwie to obrazek powinien być pionowo na początku czyli tak jak jest przygotowany a po kliknięciu powinien się obrócić do pozycji poziomej i tak zostać.
Następnie po ponownym kliknięciu powinien się spowrotem obrócić do pionu.
Jak tego dokonać ?

http://jsfiddle.net/mYQNL/97/
Tak to wygląda w tej chwili smile.gif


Nie jest doskonale ....ale:

http://jsfiddle.net/mYQNL/123/

Mniej więcej o oto mi chodziło smile.gif
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 12.07.2025 - 15:32